[gcl] Final 2.6.8 release. Build with -fno-omit-frame-pointer on all arches; SGC needs it. Fix bug in seli

Jerry James jjames at fedoraproject.org
Mon Aug 26 22:06:56 UTC 2013


commit bcc1d6c2abc75f9981ee7f000c520e3aaa858e04
Author: Jerry James <jamesjer at betterlinux.com>
Date:   Mon Aug 26 16:06:31 2013 -0600

    Final 2.6.8 release.
    Build with -fno-omit-frame-pointer on all arches; SGC needs it.
    Fix bug in selinux post script.
    Add -tcl patch.

 .gitignore                     |    2 +-
 gcl-2.6.8-alloca.patch         |   42 +-
 gcl-2.6.8-asm-signal-h.patch   |   16 +-
 gcl-2.6.8-elisp.patch          |  101 +-
 gcl-2.6.8-extension.patch      |   56 +-
 gcl-2.6.8-infrastructure.patch | 1135 +++++---------
 gcl-2.6.8-tcl.patch            |   11 +
 gcl-2.6.8-texinfo.patch        | 3351 +++++++++++++++++++++-------------------
 gcl-2.6.8-unrandomize.patch    |   40 +-
 gcl.spec                       |   44 +-
 sources                        |    2 +-
 11 files changed, 2300 insertions(+), 2500 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e0f5145..0460ed2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
-/gcl-2.6.8.tar.xz
 /gcl-2.6.8-info.tar.xz
+/gcl-2.6.8.tar.gz
diff --git a/gcl-2.6.8-alloca.patch b/gcl-2.6.8-alloca.patch
index 3e6e788..e214072 100644
--- a/gcl-2.6.8-alloca.patch
+++ b/gcl-2.6.8-alloca.patch
@@ -1,6 +1,6 @@
---- ./configure.in.orig	2013-05-10 08:26:52.000000000 -0600
-+++ ./configure.in	2013-05-10 08:26:52.000000000 -0600
-@@ -1926,33 +1926,7 @@ AC_SUBST(NOTIFY)
+--- configure.in.orig	2013-08-26 13:47:45.000000000 -0600
++++ configure.in	2013-08-26 13:59:07.000000000 -0600
+@@ -1931,33 +1931,7 @@
  
  # alloca
  
@@ -35,9 +35,9 @@
  
  # dlopen etc
  # idea make it so you do something dlopen(libX.so,RTLD_GLOBAL)
---- ./configure.orig	2013-05-10 08:32:03.000000000 -0600
-+++ ./configure	2013-05-10 08:32:03.000000000 -0600
-@@ -629,6 +629,7 @@ O3FLAGS
+--- configure.orig	2013-08-26 13:49:54.000000000 -0600
++++ configure	2013-08-26 14:00:00.000000000 -0600
+@@ -629,6 +629,7 @@
  NIFLAGS
  FINAL_CFLAGS
  BROKEN_O4_OPT
@@ -45,7 +45,7 @@
  NOTIFY
  TCL_LIBS
  TCL_DL_LIBS
-@@ -2068,6 +2069,60 @@ rm -f conftest.val
+@@ -2068,6 +2069,60 @@
    as_fn_set_status $ac_retval
  
  } # ac_fn_c_compute_int
@@ -106,7 +106,7 @@
  cat >config.log <<_ACEOF
  This file contains any messages produced by compilers while
  running configure, to aid debugging if configure makes a mistake.
-@@ -7988,81 +8043,202 @@ NOTIFY=$enable_notify
+@@ -8018,81 +8073,202 @@
  
  # alloca
  
@@ -343,9 +343,9 @@
  
  
  # dlopen etc
---- ./h/gclincl.h.in.orig	2013-05-16 08:51:00.000000000 -0600
-+++ ./h/gclincl.h.in	2013-05-16 08:51:00.000000000 -0600
-@@ -56,9 +56,9 @@ SGC is enabled.  */
+--- h/gclincl.h.in.orig	2013-07-11 09:28:16.000000000 -0600
++++ h/gclincl.h.in	2013-08-26 13:59:07.000000000 -0600
+@@ -56,9 +56,9 @@
  
  
  /* define if need alloca.h */
@@ -357,7 +357,7 @@
  #include <alloca.h>
  #endif
  
-@@ -261,6 +261,21 @@ SGC is enabled.  */
+@@ -261,6 +261,21 @@
  #undef HAVE_OUTPUT_BFD
  #undef HAVE_BUILTIN_CLEAR_CACHE
  
@@ -379,17 +379,7 @@
  /* Define to 1 if you have the <asm/sigcontext.h> header file. */
  #undef HAVE_ASM_SIGCONTEXT_H
  
-@@ -312,9 +327,6 @@ SGC is enabled.  */
- /* Define to 1 if you have the <readline/readline.h> header file. */
- #undef HAVE_READLINE_READLINE_H
- 
--/* Define to 1 if you have the <rpc/rpc.h> header file. */
--#undef HAVE_RPC_RPC_H
--
- /* Define to 1 if you have the <stdint.h> header file. */
- #undef HAVE_STDINT_H
- 
-@@ -366,8 +378,19 @@ SGC is enabled.  */
+@@ -372,8 +387,19 @@
  /* The size of `long', as computed by sizeof. */
  #undef SIZEOF_LONG
  
@@ -409,9 +399,9 @@
 +
 +/* Define to `unsigned int' if <sys/types.h> does not define. */
 +#undef size_t
---- ./acconfig.h.orig	2012-01-16 13:07:59.000000000 -0700
-+++ ./acconfig.h	2012-07-26 09:46:52.541571229 -0600
-@@ -55,9 +55,9 @@ SGC is enabled.  */
+--- acconfig.h.orig	2013-07-11 09:28:16.000000000 -0600
++++ acconfig.h	2013-08-26 13:59:07.000000000 -0600
+@@ -55,9 +55,9 @@
  
  
  /* define if need alloca.h */
diff --git a/gcl-2.6.8-asm-signal-h.patch b/gcl-2.6.8-asm-signal-h.patch
index 460ec2b..3f980ad 100644
--- a/gcl-2.6.8-asm-signal-h.patch
+++ b/gcl-2.6.8-asm-signal-h.patch
@@ -1,6 +1,6 @@
---- ./configure.in.orig	2013-05-10 08:26:52.000000000 -0600
-+++ ./configure.in	2013-05-10 08:26:52.000000000 -0600
-@@ -1644,7 +1644,7 @@ AC_MSG_RESULT(no))
+--- configure.in.orig	2013-08-26 14:14:39.000000000 -0600
++++ configure.in	2013-08-26 14:17:25.000000000 -0600
+@@ -1649,7 +1649,7 @@
  
  #if test $use = "386-linux" ; then
  	AC_CHECK_HEADERS(asm/sigcontext.h)
@@ -9,7 +9,7 @@
  	AC_MSG_CHECKING([for sigcontext])
  	AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
  	#include <signal.h>
-@@ -1669,6 +1669,7 @@ AC_MSG_RESULT(no))
+@@ -1674,6 +1674,7 @@
               #include <asm/sigcontext.h>
               #endif
               #ifdef HAVE_ASM_SIGNAL_H          
@@ -17,9 +17,9 @@
               #include <asm/signal.h>
               #endif
            ]],
---- ./configure.orig	2013-05-10 10:19:55.934751565 -0600
-+++ ./configure	2013-05-10 10:23:17.965432496 -0600
-@@ -8335,7 +8335,8 @@ done
+--- configure.orig	2013-08-26 14:14:55.000000000 -0600
++++ configure	2013-08-26 14:17:35.000000000 -0600
+@@ -8365,7 +8365,8 @@
  
  	for ac_header in asm/signal.h
  do :
@@ -29,7 +29,7 @@
  if test "x$ac_cv_header_asm_signal_h" = xyes; then :
    cat >>confdefs.h <<_ACEOF
  #define HAVE_ASM_SIGNAL_H 1
-@@ -8388,6 +8389,7 @@ $as_echo_n "checking for sigcontext... "
+@@ -8418,6 +8419,7 @@
               #include <asm/sigcontext.h>
               #endif
               #ifdef HAVE_ASM_SIGNAL_H
diff --git a/gcl-2.6.8-elisp.patch b/gcl-2.6.8-elisp.patch
index de6759f..c0ed2cf 100644
--- a/gcl-2.6.8-elisp.patch
+++ b/gcl-2.6.8-elisp.patch
@@ -73,8 +73,8 @@
 +			       "  -geometry -2-2 +" (+ (cdr x) 2)" "
 +			       chap)))))
 +  (message nil))
---- elisp/dbl.el.orig	2001-05-06 09:59:23.000000000 -0600
-+++ elisp/dbl.el	2010-12-29 11:42:04.785857068 -0700
+--- elisp/dbl.el.orig	2013-07-11 09:28:16.000000000 -0600
++++ elisp/dbl.el	2013-08-26 15:30:25.000000000 -0600
 @@ -97,29 +97,35 @@
  ;(define-key ctl-x-map "&" 'send-dbl-command)
  
@@ -125,7 +125,7 @@
  
  (defun dbl-mode ()
    "Major mode for interacting with an inferior Lisp or Maxima process.
-@@ -227,7 +233,7 @@ You may also enter keyword break command
+@@ -227,7 +233,7 @@
  
  
  (defun dbl (p)
@@ -134,7 +134,7 @@
   "Makes a dbl buffer, suitable for running an inferior
    gcl.  You are prompted for a name for the buffer.  After the shell
    starts you should start up your lisp program (eg gcl).  The bufferd
-@@ -235,16 +241,13 @@ You may also enter keyword break command
+@@ -235,16 +241,13 @@
    debug loop with (si::dbl) or :dbl in a debug loop.  "
  
    (interactive "p")
@@ -154,7 +154,7 @@
      (switch-to-buffer (concat "*" name "*"))
      (or (bolp) (newline))
      (insert "Current directory is " default-directory "\n")
-@@ -291,15 +294,6 @@ the `--fullname' keyword as in:
+@@ -291,15 +294,6 @@
  ;; It records the filename and line number, and maybe displays that file.
  (defun dbl-filter (proc string)
    (let ((inhibit-quit t))
@@ -170,7 +170,7 @@
      (if dbl-filter-accumulator
  	(dbl-filter-accumulate-marker proc
  				      (concat dbl-filter-accumulator string))
-@@ -314,14 +308,13 @@ the `--fullname' keyword as in:
+@@ -314,14 +308,13 @@
  	  (let ((end (string-match "\n" string)))
  	    (if end
                (progn
@@ -186,7 +186,7 @@
  		       
  		       (cond ((equal (cdr dbl-last-frame)  0)
  			      ;(message "got 0")
-@@ -358,8 +351,7 @@ the `--fullname' keyword as in:
+@@ -358,8 +351,7 @@
  (defun dbl-filter-insert (proc string)
    (let (moving
  	output-after-point 
@@ -196,7 +196,7 @@
      (set-buffer (process-buffer proc))
      ;; test to see if we will move the point.   We want that the
      ;; window-point of the buffer, should be equal to process-mark. 
-@@ -370,7 +362,6 @@ the `--fullname' keyword as in:
+@@ -370,7 +362,6 @@
  	(save-excursion
  	  ;; Insert the text, moving the process-marker.
  	  (goto-char (process-mark proc))
@@ -204,7 +204,7 @@
  	  (insert string)
  	  (set-marker (process-mark proc) (point))
  	 ; (setq bill (cons (list 'hi (process-mark proc) (marker-position (process-mark proc)) (point)) bill))
-@@ -488,19 +479,22 @@ If a non process buffer, just return cur
+@@ -488,19 +479,22 @@
    (interactive)
    (save-excursion
      (end-of-line)
@@ -240,7 +240,22 @@
  
  (defun dbl-find-and-display-line ()
    (interactive)
-@@ -554,8 +548,8 @@ If a non process buffer, just return cur
+@@ -511,11 +505,11 @@
+   (let* ((buffer (dbl-find-file true-file))
+ 	 (window (display-buffer buffer t))
+ 	 (pos))
+-    (save-excursion
+-      (set-buffer buffer)
++    (with-buffer buffer
+       (save-restriction
+ 	(widen)
+-	(goto-line line)
++	(goto-char (point-min))
++	(forward-line (1- line))
+ 	(setq pos (point))
+ 	(setq overlay-arrow-string "=>")
+ 	(or overlay-arrow-position
+@@ -554,8 +548,8 @@
    (goto-char (point-max))
    (setq dbl-delete-prompt-marker (point-marker))
    (dbl-set-buffer)
@@ -251,7 +266,7 @@
  
  (defun dbl-subtitute-% (command n)
    (let* (result
-@@ -566,8 +560,8 @@ If a non process buffer, just return cur
+@@ -566,8 +560,8 @@
  	   (cond (in-dbl (setq file-line (dbl-find-line)))
  		 (t (setq file-line
  			  (list (buffer-file-name)
@@ -262,7 +277,7 @@
      (while (and command (string-match "\\([^%]*\\)%\\([adeflp]\\)" command))
        (let ((letter (string-to-char (substring command (match-beginning 2))))
  	    subst)
-@@ -620,8 +614,8 @@ If a non process buffer, just return cur
+@@ -620,8 +614,8 @@
  	     (if (get-buffer-process (current-buffer))
  		 (setq current-dbl-buffer (current-buffer)))
  	     (message name)
@@ -273,7 +288,7 @@
  	     (other-window 1)
  	     )))
  	(t
-@@ -632,20 +626,21 @@ If a non process buffer, just return cur
+@@ -632,20 +626,21 @@
  		       (1+ (count-lines 1 (point))))))
  	   (and    downcase-filenames-for-dbl
  		   (setq file-name (downcase file-name)))
@@ -304,7 +319,7 @@
  	   (t (setq begin (progn (re-search-backward "[^0-9]") (forward-char 1)
  				 (dot)))
  	      (forward-char 1)
-@@ -680,6 +675,6 @@ It is for customization by you.")
+@@ -680,6 +675,6 @@
  	  (t (setq comm addr)))
      (switch-to-buffer current-dbl-buffer)
      (goto-char (dot-max))
@@ -371,8 +386,8 @@
  
  ;(let ((all xall)) (while all (set-buffer (car all))  (write-file (car all)) (setq all (cdr all))))
  ;(let ((all xall)) (while all   (find-file (car all)) (setq all (cdr all))))	
---- elisp/gcl.el.orig	2004-06-25 16:40:23.000000000 -0600
-+++ elisp/gcl.el	2010-12-29 11:42:04.787856829 -0700
+--- elisp/gcl.el.orig	2013-07-11 09:28:16.000000000 -0600
++++ elisp/gcl.el	2013-08-26 15:26:27.554140885 -0600
 @@ -14,6 +14,7 @@
  ;; M-p complete the current input by looking back through the buffer to see what was last typed
  ;;        using this prompt and this beginning.   Useful in shell, in lisp, in gdb,...
@@ -391,7 +406,7 @@
  (defun remote-lisp (&rest l)
    (and (boundp 'lisp-mode-map)
         lisp-mode-map
-@@ -158,12 +162,12 @@ by get-buffer-package.
+@@ -158,12 +162,12 @@
  	))
      
  
@@ -408,7 +423,7 @@
      (and time-to-throw-away
  	 (string-match "telnet"(buffer-name (process-buffer proc)))
  	 (dump-output proc time-to-throw-away))
-@@ -194,7 +198,7 @@ by get-buffer-package.
+@@ -194,7 +198,7 @@
  
  (defun my-send-region (proc beg end)
    (cond ((or (string-match "telnet" (process-name proc)))
@@ -417,7 +432,7 @@
  	(t
  	 (let ((package (get-buffer-package)))
  	   (save-excursion
-@@ -213,7 +217,7 @@ by get-buffer-package.
+@@ -213,7 +217,7 @@
  		 (write-region (point-min) (point-max) tmp-lisp-file nil nil)))
  	   (write-region beg end tmp-lisp-file t nil)
  	   (message "sending ..")
@@ -426,7 +441,7 @@
  	    proc
  	    (concat "(lisp::let ((*load-verbose* nil)) (#+sdebug si::nload #-sdebug load \""
  		    tmp-lisp-file
-@@ -268,9 +272,9 @@ by get-buffer-package.
+@@ -268,9 +272,9 @@
  		       (prog2 (other-window 1)
  			      (get-buffer-process (current-buffer))
  			      (other-window 1)))))
@@ -439,7 +454,7 @@
  
  (defun delete-comment-char (arg) 
    (while (and (> arg 0) (looking-at comment-start)) (delete-char 1) 
-@@ -333,8 +337,8 @@ so a second comment-region adds another 
+@@ -333,8 +337,8 @@
   (interactive "P") 
   (save-excursion 
     (let ((beg (dot)) 
@@ -450,7 +465,7 @@
  
  (defun comment-region1 (beg end arg)
    (let ((ok t))
-@@ -347,7 +351,7 @@ so a second comment-region adds another 
+@@ -347,7 +351,7 @@
  	   (while ok 
  	     (cond (arg 
  		    (delete-comment-char arg)) 
@@ -459,7 +474,7 @@
  	     (if (< end (dot)) (setq ok nil)
  	       (if  (search-forward "\n" end t) nil (setq ok nil))) )
  	 (widen))))
-@@ -363,13 +367,13 @@ so a second comment-region adds another 
+@@ -363,13 +367,13 @@
  	     (current-lisp-process (or  proc lisp-process)))
  	(other-window 1)
  	(message "Tracing: %s" (buffer-substring (point) end))
@@ -478,8 +493,8 @@
 -(provide 'gcl)
 \ No newline at end of file
 +(provide 'gcl)
---- elisp/man1-to-texi.el.orig	1999-12-06 15:43:59.000000000 -0700
-+++ elisp/man1-to-texi.el	2010-12-29 11:42:04.788856710 -0700
+--- elisp/man1-to-texi.el.orig	2013-07-11 09:28:16.000000000 -0600
++++ elisp/man1-to-texi.el	2013-08-26 15:33:14.793694423 -0600
 @@ -106,6 +106,8 @@
  ;	End of indented unfilled display.
  ; 
@@ -489,7 +504,18 @@
  (defun do-replace (lis &optional not-in-string)
    (let (x case-fold-search)
      (while lis
-@@ -285,15 +287,14 @@
+@@ -229,7 +231,9 @@
+       (kill-buffer (get-buffer "foo.info")))
+ 
+   (find-file "foo.n")
+-  (toggle-read-only 0)
++  (if (featurep 'xemacs)
++      (toggle-read-only 0)
++    (read-only-mode 1))
+   (doit)
+   (write-file "foo.texi")
+   (makeinfo-buffer ))
+@@ -285,15 +289,14 @@
      (while (< i (length vec)) (setq tot (+ (aref vec i) tot)) (setq i (+ i 1)))
      (setq surplus (/ (- 70 tot) (+ 1 (length (car items)))))
      (while items
@@ -512,7 +538,7 @@
        (setq items (cdr items)))
      )
    )
-@@ -330,22 +331,7 @@
+@@ -330,22 +333,7 @@
  	(insert "@w{" ) (end-of-line) (insert "}")
  	    (forward-line 1) (beginning-of-line))))
  
@@ -536,7 +562,7 @@
        '((after fixnum) 
  	(exit fixnum) 
  	(lower window) 
-@@ -375,7 +361,22 @@
+@@ -375,7 +363,22 @@
  	(update (idletasks)) 
  	))
  
@@ -560,7 +586,7 @@
        '(
  	(button (activate configure deactivate flash invoke)) 
  	(listbox ( configure curselection delete get insert nearest
-@@ -404,7 +405,7 @@
+@@ -404,7 +407,7 @@
  	(toplevel ( configure)) 
  	))
  
@@ -581,9 +607,9 @@
      (while (and  not-yet
  		 (re-search-backward pat nil t))
        (goto-char (match-beginning 1))
---- elisp/sshell.el.orig	2000-10-27 16:09:40.000000000 -0600
-+++ elisp/sshell.el	2010-12-29 11:42:04.790856471 -0700
-@@ -119,9 +119,9 @@ and lisp-send-defun."
+--- elisp/sshell.el.orig	2013-07-11 09:28:16.000000000 -0600
++++ elisp/sshell.el	2013-08-26 15:33:49.081656580 -0600
+@@ -119,9 +119,9 @@
  	 (ff
  	  (save-excursion
  	    (skip-chars-backward "[a-z---_0-9$/A-Z~#.]")
@@ -596,7 +622,7 @@
      (cond ((and (setq tem (file-name-completion (or file "") dir))
  		(not (equal tem file)))
  	   (cond ((eq tem t))
-@@ -181,7 +181,7 @@ If yours does, you will probably want to
+@@ -181,11 +181,10 @@
  
  (defun make-sshell (name program &optional startfile &rest switches)
    (let ((buffer (get-buffer-create (concat "*" name "*")))
@@ -604,8 +630,13 @@
 +	proc status)
      (setq proc (get-buffer-process buffer))
      (if proc (setq status (process-status proc)))
-     (save-excursion
-@@ -376,4 +376,4 @@ Also put cursor there."
+-    (save-excursion
+-      (set-buffer buffer)
++    (with-buffer buffer
+       ;;    (setq size (buffer-size))
+       (if (memq status '(run stop))
+ 	  nil
+@@ -376,4 +375,4 @@
  	       (point)))
  (require 'smart-complete)
  
diff --git a/gcl-2.6.8-extension.patch b/gcl-2.6.8-extension.patch
index ee3cc27..a0ac7a3 100644
--- a/gcl-2.6.8-extension.patch
+++ b/gcl-2.6.8-extension.patch
@@ -1,6 +1,6 @@
---- ./configure.in.orig	2013-05-10 08:26:52.000000000 -0600
-+++ ./configure.in	2013-05-10 08:26:52.000000000 -0600
-@@ -421,6 +421,7 @@ if test "$LDFLAGS" = "" ; then
+--- configure.in.orig	2013-08-26 13:59:07.000000000 -0600
++++ configure.in	2013-08-26 14:11:33.000000000 -0600
+@@ -421,6 +421,7 @@
  	LDFLAGS=" "
  fi
  
@@ -8,7 +8,7 @@
  AC_PROG_CC
  AC_PROG_CPP
  AC_SUBST(CC)
-@@ -1434,7 +1435,6 @@ AC_CHECK_HEADERS(float.h,AC_DEFINE(HAVE_
+@@ -1439,7 +1440,6 @@
  #
  AC_MSG_CHECKING([for isnormal])
  AC_RUN_IFELSE([AC_LANG_PROGRAM([[
@@ -16,7 +16,7 @@
  	    #include <math.h>
  	    ]],[[
  	    float f;
-@@ -1452,7 +1452,6 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+@@ -1457,7 +1457,6 @@
  
  AC_MSG_CHECKING([for isfinite])
  AC_RUN_IFELSE([AC_LANG_PROGRAM([[
@@ -24,9 +24,9 @@
  	#include <math.h>
  	]],[[
  	float f;
---- ./configure.orig	2013-05-10 08:32:03.000000000 -0600
-+++ ./configure	2013-05-10 08:32:03.000000000 -0600
-@@ -674,9 +674,9 @@ GMPDIR
+--- configure.orig	2013-08-26 14:00:00.000000000 -0600
++++ configure	2013-08-26 14:12:01.000000000 -0600
+@@ -674,9 +674,9 @@
  GMP
  MAKEINFO
  HAVE_MALLOC_ZONE_MEMALIGN
@@ -37,7 +37,7 @@
  CPP
  OBJEXT
  EXEEXT
-@@ -1603,48 +1603,6 @@ fi
+@@ -1603,48 +1603,6 @@
  
  } # ac_fn_c_try_cpp
  
@@ -86,7 +86,7 @@
  # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
  # -------------------------------------------------------
  # Tests whether HEADER exists, giving a warning if it cannot be compiled using
-@@ -1732,6 +1690,48 @@ fi
+@@ -1732,6 +1690,48 @@
  
  } # ac_fn_c_check_header_mongrel
  
@@ -135,7 +135,7 @@
  # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
  # -------------------------------------------------------
  # Tests whether HEADER exists and can be compiled using the include files in
-@@ -3931,6 +3931,1004 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS con
+@@ -3931,6 +3931,1004 @@
  ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
  ac_compiler_gnu=$ac_cv_c_compiler_gnu
  
@@ -1140,7 +1140,7 @@
  ac_ext=c
  ac_cpp='$CPP $CPPFLAGS'
  ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-@@ -4091,8 +5089,7 @@ if test "$GCC" = "yes" ; then
+@@ -4091,8 +5089,7 @@
  $as_echo_n "checking for CFLAG $TMPF... " >&6; }
     CFLAGS_ORI=$CFLAGS
     CFLAGS="$CFLAGS $TMPF"
@@ -1150,7 +1150,7 @@
    { { $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
-@@ -4378,267 +5375,7 @@ fi
+@@ -4378,267 +5375,7 @@
  
  case $use in
       *macosx)
@@ -1414,12 +1414,12 @@
 -done
 -
 -
--ac_fn_c_check_header_mongrel "$LINENO" "malloc/malloc.h" "ac_cv_header_malloc_malloc_h" "$ac_includes_default"
-+        ac_fn_c_check_header_mongrel "$LINENO" "malloc/malloc.h" "ac_cv_header_malloc_malloc_h" "$ac_includes_default"
+-for ac_header in malloc/malloc.h
++        for ac_header in malloc/malloc.h
+ do :
+   ac_fn_c_check_header_mongrel "$LINENO" "malloc/malloc.h" "ac_cv_header_malloc_malloc_h" "$ac_includes_default"
  if test "x$ac_cv_header_malloc_malloc_h" = xyes; then :
- 
- else
-@@ -6966,7 +7703,6 @@ else
+@@ -6996,7 +7733,6 @@
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  
@@ -1427,7 +1427,7 @@
  	    #include <math.h>
  
  int
-@@ -7040,7 +7776,6 @@ else
+@@ -7070,7 +7806,6 @@
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  
@@ -1435,8 +1435,8 @@
  	#include <math.h>
  
  int
---- ./h/gclincl.h.in.orig	2013-05-16 08:51:00.000000000 -0600
-+++ ./h/gclincl.h.in	2013-05-16 08:51:00.000000000 -0600
+--- h/gclincl.h.in.orig	2013-08-26 13:59:07.000000000 -0600
++++ h/gclincl.h.in	2013-08-26 14:11:33.000000000 -0600
 @@ -1,4 +1,7 @@
  /* h/gclincl.h.in.  Generated from configure.in by autoheader.  */
 +/* Whether compiling on a glibc-based system */
@@ -1445,7 +1445,7 @@
  /* define where the heap could begin.   Normally should
  be the smallest value returned by sbrk().   Underestimating
  by 10-20 megabytes is not a problem. */
-@@ -159,7 +162,6 @@ SGC is enabled.  */
+@@ -159,7 +162,6 @@
  
  #ifdef IN_NUM_CO
  #ifdef HAVE_ISNORMAL
@@ -1453,7 +1453,7 @@
  #include <math.h>
  #define ISNORMAL(a) isnormal(a)
  #else
-@@ -180,7 +182,6 @@ SGC is enabled.  */
+@@ -180,7 +182,6 @@
  
  #ifdef NEED_ISFINITE
  #ifdef HAVE_ISFINITE
@@ -1461,7 +1461,7 @@
  #include <math.h>
  #define ISFINITE(a) isfinite(a)
  #else
-@@ -392,5 +393,37 @@ SGC is enabled.  */
+@@ -401,5 +402,37 @@
  /* Define to 1 if you have the ANSI C header files. */
  #undef STDC_HEADERS
  
@@ -1499,8 +1499,8 @@
 +
  /* Define to `unsigned int' if <sys/types.h> does not define. */
  #undef size_t
---- ./acconfig.h.orig	2012-07-26 09:46:52.000000000 -0600
-+++ ./acconfig.h	2013-05-16 08:51:00.000000000 -0600
+--- acconfig.h.orig	2013-08-26 13:59:07.000000000 -0600
++++ acconfig.h	2013-08-26 14:11:33.000000000 -0600
 @@ -1,3 +1,6 @@
 +/* Whether compiling on a glibc-based system */
 +#undef _GNU_SOURCE
@@ -1508,7 +1508,7 @@
  /* define where the heap could begin.   Normally should
  be the smallest value returned by sbrk().   Underestimating
  by 10-20 megabytes is not a problem. */
-@@ -158,7 +161,6 @@ SGC is enabled.  */
+@@ -158,7 +161,6 @@
  
  #ifdef IN_NUM_CO
  #ifdef HAVE_ISNORMAL
@@ -1516,7 +1516,7 @@
  #include <math.h>
  #define ISNORMAL(a) isnormal(a)
  #else
-@@ -179,7 +181,6 @@ SGC is enabled.  */
+@@ -179,7 +181,6 @@
  
  #ifdef NEED_ISFINITE
  #ifdef HAVE_ISFINITE
diff --git a/gcl-2.6.8-infrastructure.patch b/gcl-2.6.8-infrastructure.patch
index b99743b..48c8833 100644
--- a/gcl-2.6.8-infrastructure.patch
+++ b/gcl-2.6.8-infrastructure.patch
@@ -1,5 +1,5 @@
---- ./config.guess.orig	2010-08-26 13:04:34.000000000 -0600
-+++ ./config.guess	2013-05-10 08:47:10.074104210 -0600
+--- config.guess.orig	2013-07-11 09:28:16.000000000 -0600
++++ config.guess	2013-06-17 03:16:35.000000000 -0600
 @@ -1,14 +1,12 @@
  #! /bin/sh
  # Attempt to guess a canonical system name.
@@ -9,7 +9,7 @@
 +#   Copyright 1992-2013 Free Software Foundation, Inc.
  
 -timestamp='2009-12-30'
-+timestamp='2013-04-24'
++timestamp='2013-06-10'
  
  # 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
@@ -64,7 +64,33 @@
  
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-@@ -145,7 +137,7 @@
+@@ -140,12 +132,33 @@
+ UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
+ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+ 
++case "${UNAME_SYSTEM}" in
++Linux|GNU|GNU/*)
++	# If the system lacks a compiler, then just pick glibc.
++	# We could probably try harder.
++	LIBC=gnu
++
++	eval $set_cc_for_build
++	cat <<-EOF > $dummy.c
++	#include <features.h>
++	#if defined(__UCLIBC__)
++	LIBC=uclibc
++	#elif defined(__dietlibc__)
++	LIBC=dietlibc
++	#else
++	LIBC=gnu
++	#endif
++	EOF
++	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
++	;;
++esac
++
+ # Note: order is significant - the case branches are not exclusive.
+ 
  case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
      *:NetBSD:*:*)
  	# NetBSD (nbsd) targets should (where applicable) match one or
@@ -73,7 +99,7 @@
  	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
  	# switched to ELF, *-*-netbsd* would select the old
  	# object file format.  This provides both forward
-@@ -181,7 +173,7 @@
+@@ -181,7 +194,7 @@
  		fi
  		;;
  	    *)
@@ -82,7 +108,7 @@
  		;;
  	esac
  	# The OS release
-@@ -202,6 +194,10 @@
+@@ -202,6 +215,10 @@
  	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
  	echo "${machine}-${os}${release}"
  	exit ;;
@@ -93,7 +119,7 @@
      *:OpenBSD:*:*)
  	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
  	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-@@ -224,7 +220,7 @@
+@@ -224,7 +241,7 @@
  		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
  		;;
  	*5.*)
@@ -102,7 +128,7 @@
  		;;
  	esac
  	# According to Compaq, /usr/sbin/psrinfo has been available on
-@@ -270,7 +266,10 @@
+@@ -270,7 +287,10 @@
  	# A Xn.n version is an unreleased experimental baselevel.
  	# 1.2 uses "1.2" for uname -r.
  	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
@@ -114,7 +140,7 @@
      Alpha\ *:Windows_NT*:*)
  	# How do we know it's Interix rather than the generic POSIX subsystem?
  	# Should we change UNAME_MACHINE based on the output of uname instead
-@@ -296,12 +295,12 @@
+@@ -296,12 +316,12 @@
  	echo s390-ibm-zvmoe
  	exit ;;
      *:OS400:*:*)
@@ -129,7 +155,7 @@
  	echo arm-unknown-riscos
  	exit ;;
      SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-@@ -395,23 +394,23 @@
+@@ -395,23 +415,23 @@
      # MiNT.  But MiNT is downward compatible to TOS, so this should
      # be no problem.
      atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
@@ -162,7 +188,7 @@
      m68k:machten:*:*)
  	echo m68k-apple-machten${UNAME_RELEASE}
  	exit ;;
-@@ -481,8 +480,8 @@
+@@ -481,8 +501,8 @@
  	echo m88k-motorola-sysv3
  	exit ;;
      AViiON:dgux:*:*)
@@ -173,7 +199,7 @@
  	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
  	then
  	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-@@ -495,7 +494,7 @@
+@@ -495,7 +515,7 @@
  	else
  	    echo i586-dg-dgux${UNAME_RELEASE}
  	fi
@@ -182,7 +208,7 @@
      M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
  	echo m88k-dolphin-sysv3
  	exit ;;
-@@ -552,7 +551,7 @@
+@@ -552,7 +572,7 @@
  		echo rs6000-ibm-aix3.2
  	fi
  	exit ;;
@@ -191,7 +217,7 @@
  	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
  	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
  		IBM_ARCH=rs6000
-@@ -595,52 +594,52 @@
+@@ -595,52 +615,52 @@
  	    9000/[678][0-9][0-9])
  		if [ -x /usr/bin/getconf ]; then
  		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
@@ -283,7 +309,7 @@
  EOF
  		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
  		    test -z "$HP_ARCH" && HP_ARCH=hppa
-@@ -731,22 +730,22 @@
+@@ -731,22 +751,22 @@
  	exit ;;
      C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
  	echo c1-convex-bsd
@@ -311,7 +337,7 @@
      CRAY*Y-MP:*:*:*)
  	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
  	exit ;;
-@@ -770,14 +769,14 @@
+@@ -770,14 +790,14 @@
  	exit ;;
      F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
  	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
@@ -333,7 +359,7 @@
  	exit ;;
      i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
  	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-@@ -789,30 +788,35 @@
+@@ -789,30 +809,35 @@
  	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
  	exit ;;
      *:FreeBSD:*:*)
@@ -376,127 +402,190 @@
  	    x86)
  		echo i586-pc-interix${UNAME_RELEASE}
  		exit ;;
-@@ -858,6 +862,13 @@
+@@ -849,15 +874,22 @@
+ 	exit ;;
+     *:GNU:*:*)
+ 	# the GNU system
+-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
++	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ 	exit ;;
+     *:GNU/*:*:*)
+ 	# other systems with GNU libc and userland
+-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
++	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
+ 	exit ;;
      i*86:Minix:*:*)
  	echo ${UNAME_MACHINE}-pc-minix
  	exit ;;
 +    aarch64:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
 +    aarch64_be:Linux:*:*)
 +	UNAME_MACHINE=aarch64_be
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
      alpha:Linux:*:*)
  	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
  	  EV5)   UNAME_MACHINE=alphaev5 ;;
-@@ -867,11 +878,14 @@
+@@ -867,52 +899,56 @@
  	  EV6)   UNAME_MACHINE=alphaev6 ;;
  	  EV67)  UNAME_MACHINE=alphaev67 ;;
  	  EV68*) UNAME_MACHINE=alphaev68 ;;
 -        esac
 +	esac
  	objdump --private-headers /bin/sh | grep -q ld.so.1
- 	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- 	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- 	exit ;;
-+    arc:Linux:*:* | arceb:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
++	if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
++    arc:Linux:*:* | arceb:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
      arm*:Linux:*:*)
  	eval $set_cc_for_build
  	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-@@ -879,20 +893,29 @@
+ 	    | grep -q __ARM_EABI__
  	then
- 	    echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
++	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	else
 -	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
 +	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 +		| grep -q __ARM_PCS_VFP
 +	    then
-+		echo ${UNAME_MACHINE}-unknown-linux-gnueabi
++		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
 +	    else
-+		echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
++		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
 +	    fi
  	fi
  	exit ;;
      avr32*:Linux:*:*)
- 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      cris:Linux:*:*)
 -	echo cris-axis-linux-gnu
-+	echo ${UNAME_MACHINE}-axis-linux-gnu
++	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
  	exit ;;
      crisv32:Linux:*:*)
 -	echo crisv32-axis-linux-gnu
-+	echo ${UNAME_MACHINE}-axis-linux-gnu
++	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
  	exit ;;
      frv:Linux:*:*)
 -    	echo frv-unknown-linux-gnu
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
 +    hexagon:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      i*86:Linux:*:*)
- 	LIBC=gnu
-@@ -901,6 +924,11 @@
- 	#ifdef __dietlibc__
- 	LIBC=dietlibc
+-	LIBC=gnu
+-	eval $set_cc_for_build
+-	sed 's/^	//' << EOF >$dummy.c
+-	#ifdef __dietlibc__
+-	LIBC=dietlibc
+-	#endif
+-EOF
+-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+-	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
++	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+ 	exit ;;
+     ia64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     m32r*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     m68*:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
+     mips:Linux:*:* | mips64:Linux:*:*)
+ 	eval $set_cc_for_build
+@@ -931,51 +967,63 @@
  	#endif
-+	#else
-+	#include <features.h>
-+	#ifdef __UCLIBC__
-+	LIBC=uclibc
-+	#endif
  EOF
- 	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- 	echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-@@ -933,8 +961,11 @@
  	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- 	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
+-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
++	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
  	;;
 +    or1k:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
      or32:Linux:*:*)
 -	echo or32-unknown-linux-gnu
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      padre:Linux:*:*)
- 	echo sparc-unknown-linux-gnu
-@@ -960,7 +991,7 @@
- 	echo ${UNAME_MACHINE}-ibm-linux
+-	echo sparc-unknown-linux-gnu
++	echo sparc-unknown-linux-${LIBC}
+ 	exit ;;
+     parisc64:Linux:*:* | hppa64:Linux:*:*)
+-	echo hppa64-unknown-linux-gnu
++	echo hppa64-unknown-linux-${LIBC}
+ 	exit ;;
+     parisc:Linux:*:* | hppa:Linux:*:*)
+ 	# Look for CPU level
+ 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+-	  *)    echo hppa-unknown-linux-gnu ;;
++	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
++	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
++	  *)    echo hppa-unknown-linux-${LIBC} ;;
+ 	esac
+ 	exit ;;
+     ppc64:Linux:*:*)
+-	echo powerpc64-unknown-linux-gnu
++	echo powerpc64-unknown-linux-${LIBC}
+ 	exit ;;
+     ppc:Linux:*:*)
+-	echo powerpc-unknown-linux-gnu
++	echo powerpc-unknown-linux-${LIBC}
++	exit ;;
++    ppc64le:Linux:*:*)
++	echo powerpc64le-unknown-linux-${LIBC}
++	exit ;;
++    ppcle:Linux:*:*)
++	echo powerpcle-unknown-linux-${LIBC}
+ 	exit ;;
+     s390:Linux:*:* | s390x:Linux:*:*)
+-	echo ${UNAME_MACHINE}-ibm-linux
++	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
  	exit ;;
      sh64*:Linux:*:*)
 -    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      sh*:Linux:*:*)
- 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-@@ -968,14 +999,19 @@
-     sparc:Linux:*:* | sparc64:Linux:*:*)
- 	echo ${UNAME_MACHINE}-unknown-linux-gnu
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
-+    tile*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+     sparc:Linux:*:* | sparc64:Linux:*:*)
+-	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 +	exit ;;
++    tile*:Linux:*:*)
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+ 	exit ;;
      vax:Linux:*:*)
- 	echo ${UNAME_MACHINE}-dec-linux-gnu
+-	echo ${UNAME_MACHINE}-dec-linux-gnu
++	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
  	exit ;;
      x86_64:Linux:*:*)
 -	echo x86_64-unknown-linux-gnu
-+	LIBC=gnu
-+	test -r /lib/libc.so && od -An -S13 /lib/libc.so | grep -q __uClibc_main && LIBC=uclibc
 +	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      xtensa*:Linux:*:*)
 -    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
++	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
  	exit ;;
      i*86:DYNIX/ptx:4*:*)
  	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-@@ -984,11 +1020,11 @@
+@@ -984,11 +1032,11 @@
  	echo i386-sequent-sysv4
  	exit ;;
      i*86:UNIX_SV:4.2MP:2.*)
@@ -512,7 +601,7 @@
  	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
  	exit ;;
      i*86:OS/2:*:*)
-@@ -1020,7 +1056,7 @@
+@@ -1020,7 +1068,7 @@
  	fi
  	exit ;;
      i*86:*:5:[678]*)
@@ -521,7 +610,7 @@
  	case `/bin/uname -X | grep "^Machine"` in
  	    *486*)	     UNAME_MACHINE=i486 ;;
  	    *Pentium)	     UNAME_MACHINE=i586 ;;
-@@ -1048,13 +1084,13 @@
+@@ -1048,13 +1096,13 @@
  	exit ;;
      pc:*:*:*)
  	# Left here for compatibility:
@@ -538,7 +627,7 @@
      Intel:Mach:3*:*)
  	echo i386-pc-mach3
  	exit ;;
-@@ -1089,8 +1125,8 @@
+@@ -1089,8 +1137,8 @@
  	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
  	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
      3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
@@ -549,7 +638,7 @@
      NCR*:*:4.2:* | MPRAS*:*:4.2:*)
  	OS_REL='.3'
  	test -r /etc/.relid \
-@@ -1133,10 +1169,10 @@
+@@ -1133,10 +1181,10 @@
  		echo ns32k-sni-sysv
  	fi
  	exit ;;
@@ -564,7 +653,7 @@
      *:UNIX_System_V:4*:FTX*)
  	# From Gerald Hewes <hewes at openmarket.com>.
  	# How about differentiating between stratus architectures? -djm
-@@ -1162,11 +1198,11 @@
+@@ -1162,11 +1210,11 @@
  	exit ;;
      R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
  	if [ -d /usr/nec ]; then
@@ -579,7 +668,7 @@
      BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
  	echo powerpc-be-beos
  	exit ;;
-@@ -1179,6 +1215,9 @@
+@@ -1179,6 +1227,9 @@
      BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
  	echo i586-pc-haiku
  	exit ;;
@@ -589,7 +678,42 @@
      SX-4:SUPER-UX:*:*)
  	echo sx4-nec-superux${UNAME_RELEASE}
  	exit ;;
-@@ -1231,7 +1270,10 @@
+@@ -1205,19 +1256,21 @@
+ 	exit ;;
+     *:Darwin:*:*)
+ 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+-	case $UNAME_PROCESSOR in
+-	    i386)
+-		eval $set_cc_for_build
+-		if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+-		  if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+-		      (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+-		      grep IS_64BIT_ARCH >/dev/null
+-		  then
+-		      UNAME_PROCESSOR="x86_64"
+-		  fi
+-		fi ;;
+-	    unknown) UNAME_PROCESSOR=powerpc ;;
+-	esac
++	eval $set_cc_for_build
++	if test "$UNAME_PROCESSOR" = unknown ; then
++	    UNAME_PROCESSOR=powerpc
++	fi
++	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
++	    if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
++		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
++		grep IS_64BIT_ARCH >/dev/null
++	    then
++		case $UNAME_PROCESSOR in
++		    i386) UNAME_PROCESSOR=x86_64 ;;
++		    powerpc) UNAME_PROCESSOR=powerpc64 ;;
++		esac
++	    fi
++	fi
+ 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ 	exit ;;
+     *:procnto*:*:* | *:QNX:[0123456789]*:*)
+@@ -1231,7 +1284,10 @@
      *:QNX:*:4*)
  	echo i386-pc-qnx
  	exit ;;
@@ -601,7 +725,7 @@
  	echo nse-tandem-nsk${UNAME_RELEASE}
  	exit ;;
      NSR-?:NONSTOP_KERNEL:*:*)
-@@ -1276,13 +1318,13 @@
+@@ -1276,13 +1332,13 @@
  	echo pdp10-unknown-its
  	exit ;;
      SEI:*:*:SEIUX)
@@ -617,7 +741,7 @@
  	case "${UNAME_MACHINE}" in
  	    A*) echo alpha-dec-vms ; exit ;;
  	    I*) echo ia64-dec-vms ; exit ;;
-@@ -1300,11 +1342,11 @@
+@@ -1300,11 +1356,11 @@
      i*86:AROS:*:*)
  	echo ${UNAME_MACHINE}-pc-aros
  	exit ;;
@@ -632,7 +756,7 @@
  eval $set_cc_for_build
  cat >$dummy.c <<EOF
  #ifdef _SEQUENT_
-@@ -1322,11 +1364,11 @@
+@@ -1322,11 +1378,11 @@
  #include <sys/param.h>
    printf ("m68k-sony-newsos%s\n",
  #ifdef NEWSOS4
@@ -647,8 +771,8 @@
  #endif
  #endif
  
---- ./config.sub.orig	2010-08-26 13:04:34.000000000 -0600
-+++ ./config.sub	2013-05-10 08:48:44.904007408 -0600
+--- config.sub.orig	2013-07-11 09:28:16.000000000 -0600
++++ config.sub	2013-06-17 03:16:35.000000000 -0600
 @@ -1,38 +1,31 @@
  #! /bin/sh
  # Configuration validation subroutine script.
@@ -1070,6 +1194,15 @@
  		;;
  	ppcle | powerpclittle | ppc-le | powerpc-little)
  		basic_machine=powerpcle-unknown
+@@ -935,7 +1006,7 @@
+ 		;;
+ 	ppc64)	basic_machine=powerpc64-unknown
+ 		;;
+-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
++	ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ 		;;
+ 	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+ 		basic_machine=powerpc64le-unknown
 @@ -950,7 +1021,11 @@
  		basic_machine=i586-unknown
  		os=-pw32
@@ -1281,15 +1414,15 @@
  		os=-mmixware
  		;;
  	*-wec)
---- ./configure.in.orig	2012-05-05 13:52:46.000000000 -0600
-+++ ./configure.in	2013-05-10 08:26:52.478541230 -0600
+--- configure.in.orig	2013-07-11 09:28:16.000000000 -0600
++++ configure.in	2013-08-26 13:47:45.000000000 -0600
 @@ -1,4 +1,4 @@
 -AC_INIT()
 +AC_INIT
  AC_PREREQ([2.61])
  AC_CONFIG_HEADER(h/gclincl.h)
  
-@@ -445,7 +445,7 @@ if test "$GCC" = "yes" ; then
+@@ -445,7 +445,7 @@
     AC_MSG_CHECKING([for CFLAG $TMPF])
     CFLAGS_ORI=$CFLAGS
     CFLAGS="$CFLAGS $TMPF"
@@ -1298,7 +1431,7 @@
     CFLAGS=$CFLAGS_ORI
  
  else
-@@ -629,9 +629,6 @@ fi
+@@ -629,9 +629,6 @@
  AC_MSG_CHECKING([system version (for dynamic loading)])
  if machine=`uname -m` ; then true; else machine=unknown ; fi
  
@@ -1308,9 +1441,9 @@
  if test -f /usr/lib/NextStep/software_version; then
      system=NEXTSTEP-`${AWK} '/3/,/3/' /usr/lib/NextStep/software_version`
  else
-@@ -672,21 +669,24 @@ esac
+@@ -672,21 +669,24 @@
  
- AC_CHECK_HEADER(unistd.h,
+ AC_CHECK_HEADERS(unistd.h,
  	AC_CHECK_LIB(c,sysconf,
 -		AC_MSG_CHECKING("for _SC_CLK_TCK")
 -		AC_TRY_RUN([#include <unistd.h>
@@ -1338,9 +1471,9 @@
  
  #MY_SUBDIRS=
  
-@@ -703,17 +703,19 @@ if test $use_gmp = yes ; then
+@@ -703,17 +703,19 @@
   if test "$enable_dynsysgmp" = "yes" ; then
- 	AC_CHECK_HEADER(gmp.h,
+ 	AC_CHECK_HEADERS(gmp.h,
  		AC_CHECK_LIB(gmp,__gmpz_init,
 -			AC_MSG_CHECKING("for external gmp version")
 -			AC_TRY_RUN([#include <gmp.h>
@@ -1362,7 +1495,7 @@
  				MPFILES=
  				PATCHED_SYMBOLS=
  #				if test "$use" = "m68k-linux" ; then
-@@ -725,7 +727,8 @@ if test $use_gmp = yes ; then
+@@ -725,7 +727,8 @@
  				echo "int main() {return 0;}" >>foo.c
  				MP_INCLUDE=`cpp foo.c | grep /gmp.h | head -n 1 | $AWK '{print $3}' | tr -d '"'`
  				rm -f foo.c,
@@ -1372,7 +1505,7 @@
  			echo "Cannot use dynamic gmp lib" ,),
  		echo "Cannot use dynamic gmp lib" ,)
  fi
-@@ -772,7 +775,7 @@ if test "$NEED_LOCAL_GMP" != "" ; then
+@@ -772,7 +775,7 @@
  
  fi
  
@@ -1381,7 +1514,7 @@
  cat>foo.c <<EOFF
  #include <math.h>
  #include <stdio.h>
-@@ -782,60 +785,62 @@ $CC -c foo.c -o foo.o
+@@ -782,60 +785,62 @@
  if nm foo.o |grep " U " | grep "_cos" >/dev/null || nm foo.o |grep " U " | grep " _getc" >/dev/null ; then
  	LEADING_UNDERSCORE=1
  	AC_DEFINE(LEADING_UNDERSCORE)
@@ -1463,7 +1596,7 @@
  
   GMP=1
   AC_DEFINE(GMP)
-@@ -891,10 +896,9 @@ if test "$enable_dlopen" = "yes" ; then
+@@ -891,10 +896,9 @@
  
   	AC_CHECK_LIB(dl,dlopen,have_dl=1,have_dl=0)
   	if test "$have_dl" = "0" ; then
@@ -1476,7 +1609,7 @@
  dnl LIBS and TLIBS - why not merged from the beginning?
  
  	TLIBS="$TLIBS -ldl -rdynamic"
-@@ -908,15 +912,17 @@ if test "$enable_statsysbfd" = "yes" ||
+@@ -908,15 +912,17 @@
  		#
  		# Old binutils appear to need CONST defined to const
  		#
@@ -1499,7 +1632,7 @@
  					AC_MSG_RESULT(yes) 
  					AC_DEFINE(NEED_CONST),
  					AC_MSG_ERROR([cannot use bfd]),
-@@ -930,11 +936,12 @@ if test "$enable_statsysbfd" = "yes" ||
+@@ -930,11 +936,12 @@
  # BFD boolean syntax
  #
  
@@ -1515,7 +1648,7 @@
  		AC_MSG_RESULT(yes) 
  		AC_DEFINE(HAVE_BFD_BOOLEAN),
  		AC_MSG_RESULT(no),
-@@ -945,10 +952,11 @@ if test "$enable_statsysbfd" = "yes" ||
+@@ -945,10 +952,11 @@
  # bfd_link_info.output_bfd minimal configure change check
  #
  
@@ -1530,7 +1663,7 @@
  		AC_MSG_RESULT(yes) 
  		AC_DEFINE(HAVE_OUTPUT_BFD),
  		AC_MSG_RESULT(no),
-@@ -1061,10 +1069,10 @@ case $use in
+@@ -1061,10 +1069,10 @@
       ia64*) ;;    #FIXME
       *) 
       AC_MSG_CHECKING(__builtin___clear_cache)
@@ -1545,7 +1678,7 @@
  				[AC_DEFINE(HAVE_BUILTIN_CLEAR_CACHE)
  				 AC_MSG_RESULT(yes)],
  				 AC_MSG_RESULT(no));;
-@@ -1076,45 +1084,47 @@ esac
+@@ -1076,45 +1084,47 @@
  # mechanism, in the PAGE macro.  This offset is subtracted from
  # addresses, in calculating a page for an address in the heap.
  
@@ -1606,7 +1739,7 @@
    /* Are we little or big endian?  Adapted from Harbison&Steele.  */
    union
    {
-@@ -1123,7 +1133,7 @@ AC_TRY_RUN([int main () {
+@@ -1123,7 +1133,7 @@
    } u;
    u.d = 1.0;
    return u.l[sizeof(double)/sizeof(int)-1] ? 0 : 1;
@@ -1615,7 +1748,7 @@
     AC_DEFINE(LITTLE_END),
     AC_MSG_RESULT(big),
     AC_MSG_RESULT([WARNING: ASSUMING LITTLE ENDIAN FOR CROSS COMPILING !!!]
-@@ -1136,15 +1146,16 @@ AC_SUBST(LITTLE_END)
+@@ -1136,15 +1146,16 @@
  
  AC_MSG_CHECKING([for sbrk])
  HAVE_SBRK=""
@@ -1636,7 +1769,7 @@
  		HAVE_SBRK=1
  		AC_MSG_RESULT(yes),
  		AC_MSG_RESULT([no: WARNING you must be able to emulate sbrk: as on mingw or macosx]),
-@@ -1156,14 +1167,15 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1161,14 +1172,15 @@
  #		   AC_MSG_RESULT(sys/personality.h not found))
  
  	AC_MSG_CHECKING([for ADDR_NO_RANDOMIZE constant])
@@ -1656,7 +1789,7 @@
  			ADDR_NO_RANDOMIZE=`cat conftest1`,ADDR_NO_RANDOMIZE=0,ADDR_NO_RANDOMIZE=0)
  	if test "$ADDR_NO_RANDOMIZE" = "0" ; then
  		AC_MSG_RESULT([no, assuming 0x40000])
-@@ -1173,10 +1185,11 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1178,10 +1190,11 @@
  	fi
  
  	AC_MSG_CHECKING([for personality(ADDR_NO_RANDOMIZE) support])
@@ -1670,7 +1803,7 @@
  
  	if test "$CAN_UNRANDOMIZE_SBRK" != 0 ; then
  		AC_MSG_RESULT(yes)
-@@ -1186,8 +1199,9 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1191,8 +1204,9 @@
  	fi
  
  	AC_MSG_CHECKING([that sbrk is (now) non-random])
@@ -1682,7 +1815,7 @@
  		    int main(int argc,char * argv[],char * envp[]) {
  			FILE *f;
  			#ifdef CAN_UNRANDOMIZE_SBRK
-@@ -1195,13 +1209,13 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1200,13 +1214,13 @@
  			#endif
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
@@ -1701,7 +1834,7 @@
  		    int main(int argc,char * argv[],char * envp[]) {
  			FILE *f;
  			#ifdef CAN_UNRANDOMIZE_SBRK
-@@ -1209,10 +1223,9 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1214,10 +1228,9 @@
  			#endif
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
@@ -1714,7 +1847,7 @@
  	fi
  	if test "$SBRK" = "$SBRK1" ; then
  		AC_MSG_RESULT(yes)
-@@ -1227,15 +1240,17 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1232,15 +1245,17 @@
  fi
  
  # pagewidth
@@ -1736,7 +1869,7 @@
  AC_MSG_RESULT($PAGEWIDTH)
  AC_DEFINE_UNQUOTED(PAGEWIDTH,$PAGEWIDTH)
  AC_SUBST(PAGEWIDTH)
-@@ -1243,11 +1258,12 @@ AC_SUBST(PAGEWIDTH)
+@@ -1248,11 +1263,12 @@
  
  old_LDFLAGS="$LDFLAGS"
  LDFLAGS="$TLDFLAGS"
@@ -1753,7 +1886,7 @@
  int
  main(int argc,char * argv[],char *envp[])
  {
-@@ -1272,36 +1288,35 @@ main(int argc,char * argv[],char *envp[]
+@@ -1277,36 +1293,35 @@
  #endif
    fclose(fp);
    return 0;
@@ -1801,7 +1934,7 @@
  AC_MSG_RESULT(yes)],
  AC_MSG_RESULT(no),
  AC_MSG_RESULT(no)
-@@ -1470,7 +1485,6 @@ AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+@@ -1475,7 +1490,6 @@
  #	   To get around this problem, check for both libraries together
  #	   if -lsocket doesn't work by itself.
  #--------------------------------------------------------------------
@@ -1809,7 +1942,7 @@
  tcl_checkBoth=0
  AC_CHECK_FUNC(connect, tcl_checkSocket=0, tcl_checkSocket=1)
  if test "$tcl_checkSocket" = 1; then
-@@ -1507,8 +1521,8 @@ fi
+@@ -1512,8 +1526,8 @@
  AC_SUBST(RL_OBJS)
  AC_SUBST(RL_LIB)
  
@@ -1820,7 +1953,7 @@
  #include <sys/time.h>
  #include <sys/types.h>
  #include <unistd.h>
-@@ -1525,24 +1539,25 @@ AC_TRY_LINK([
+@@ -1530,24 +1544,25 @@
  #include <netinet/in.h>		/* struct in_addr, struct sockaddr_in */
  #include <arpa/inet.h>		/* inet_ntoa() */
  #include <netdb.h>		/* gethostbyname() */
@@ -1853,7 +1986,7 @@
  [AC_DEFINE(LISTEN_USE_FCNTL)
   AC_MSG_RESULT(yes)],
  AC_MSG_RESULT(no))
-@@ -1563,7 +1578,7 @@ AC_CHECK_FUNC(_cleanup, [AC_DEFINE(USE_C
+@@ -1568,7 +1583,7 @@
  AC_SUBST(USE_CLEANUP)
  gcl_ok=no
  
@@ -1862,7 +1995,7 @@
  if test $gcl_ok = yes ; then
  AC_DEFINE(ENDIAN_ALREADY_DEFINED)
  fi
-@@ -1595,32 +1610,32 @@ case $system in
+@@ -1600,32 +1615,32 @@
  esac
  
  
@@ -1910,7 +2043,7 @@
  [AC_DEFINE(HAVE_SIGEMT)
   AC_SUBST(HAVE_SIGEMT)
   AC_MSG_RESULT(yes)],
-@@ -1632,12 +1647,13 @@ AC_MSG_RESULT(no))
+@@ -1637,12 +1652,13 @@
  #if test $use = "386-linux" ; then
  	AC_CHECK_HEADERS(asm/sigcontext.h)
  	AC_CHECK_HEADERS(asm/signal.h)
@@ -1929,7 +2062,7 @@
         [
          sigcontext_works=1;
          AC_DEFINE(SIGNAL_H_HAS_SIGCONTEXT)
-@@ -1648,18 +1664,19 @@ AC_MSG_RESULT(no))
+@@ -1653,18 +1669,19 @@
           AC_MSG_RESULT(sigcontext NOT in signal.h)]
         )
         if test "$sigcontext_works" = 0 ; then
@@ -1954,7 +2087,7 @@
          [
          AC_DEFINE(HAVE_SIGCONTEXT)
  	AC_MSG_RESULT(sigcontext in asm files)
-@@ -1769,6 +1786,8 @@ AC_SUBST(INFO_DIR)
+@@ -1774,6 +1791,8 @@
  
  if test "$enable_tcltk" = "yes" ; then
  
@@ -1963,7 +2096,7 @@
  AC_MSG_CHECKING([for tcl/tk])
  
  
-@@ -1789,9 +1808,6 @@ if { [file exists [file join [set dir] t
+@@ -1794,9 +1813,6 @@
  EOF
  #cp conftest.tcl foo.tcl
  
@@ -1973,7 +2106,7 @@
  if test "${TCLSH}" = "" ; then true ; else
  TCL_CONFIG_PREFIX=`${TCLSH} < conftest.tcl`
  fi
-@@ -1865,7 +1881,6 @@ fi
+@@ -1870,7 +1886,6 @@
  
  fi
  
@@ -1981,7 +2114,7 @@
  if test "$have_ieee" = "0" ; then
   TCL_LIBS=`echo ${TCL_LIBS} | sed -e "s:-lieee::g" `
  fi
-@@ -1909,15 +1924,18 @@ AC_SUBST(NOTIFY)
+@@ -1914,15 +1929,18 @@
  
  # the time handling for unixtime, add timezone
  
@@ -2004,7 +2137,7 @@
    ,gcl_ok=yes, gcl_ok=no,gcl_ok=no)
   if test $gcl_ok = yes ; then
      AC_MSG_RESULT(yes)
-@@ -1936,8 +1954,6 @@ if test $gcl_ok = no ; then     AC_MSG_R
+@@ -1941,8 +1959,6 @@
  
  
  
@@ -2013,7 +2146,7 @@
  # dlopen etc
  # idea make it so you do something dlopen(libX.so,RTLD_GLOBAL)
  # then dlload("foo.o") a lisp file can refer to things in libX.so
-@@ -1961,7 +1977,7 @@ if test $gcl_ok = no ; then     AC_MSG_R
+@@ -1966,7 +1982,7 @@
  
  # redhat/cygnus released for some reason a buggy version of gcc,
  # which no one else released.   Catch that here.
@@ -2022,7 +2155,7 @@
  if  2>&1 $CC -v | fgrep "gcc version 2.96" > /dev/null 
     then 
          BROKEN_O4_OPT=1
-@@ -1996,7 +2012,8 @@ AC_SUBST(GNU_LD)
+@@ -2001,7 +2017,8 @@
  if test -f h/$use.defs  ; then
  
    AC_SUBST(use)
@@ -2032,184 +2165,9 @@
    echo makedefc
    cat makedefc
  
---- ./configure.orig	2012-05-05 13:52:44.000000000 -0600
-+++ ./configure	2013-05-10 08:32:03.550337007 -0600
-@@ -1,11 +1,9 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.68.
-+# Generated by GNU Autoconf 2.69.
- #
- #
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
--# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
--# Foundation, Inc.
-+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
- #
- #
- # This configure script is free software; the Free Software Foundation
-@@ -134,6 +132,31 @@
- # CDPATH.
- (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
- 
-+# Use a proper internal environment variable to ensure we don't fall
-+  # into an infinite loop, continuously re-executing ourselves.
-+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
-+    _as_can_reexec=no; export _as_can_reexec;
-+    # 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
-+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+"$@"}
-+# Admittedly, this is quite paranoid, since all the known shells bail
-+# out after a failed `exec'.
-+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-+as_fn_exit 255
-+  fi
-+  # We don't want this to propagate to other subprocesses.
-+          { _as_can_reexec=; unset _as_can_reexec;}
- 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
-@@ -167,7 +190,8 @@
- else
-   exitcode=1; echo positional parameters were not saved.
- fi
--test x\$exitcode = x0 || exit 1"
-+test x\$exitcode = x0 || exit 1
-+test -x / || 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'\" &&
-@@ -212,21 +236,25 @@
- 
- 
-       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+"$@"}
-+  export CONFIG_SHELL
-+             # 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
-+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+"$@"}
-+# Admittedly, this is quite paranoid, since all the known shells bail
-+# out after a failed `exec'.
-+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-+exit 255
- fi
- 
-     if test x$as_have_required = xno; then :
-@@ -328,6 +356,14 @@
- 
- 
- } # as_fn_mkdir_p
-+
-+# as_fn_executable_p FILE
-+# -----------------------
-+# Test if FILE is an executable regular file.
-+as_fn_executable_p ()
-+{
-+  test -f "$1" && test -x "$1"
-+} # as_fn_executable_p
- # as_fn_append VAR VALUE
- # ----------------------
- # Append the text in VALUE to the end of the definition contained in VAR. Take
-@@ -449,6 +485,10 @@
-   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; }
- 
-+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
-+  # already done that, so ensure we don't try to do so again and fall
-+  # in an infinite loop.  This has already happened in practice.
-+  _as_can_reexec=no; export _as_can_reexec
-   # 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).
-@@ -483,16 +523,16 @@
-     # ... 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'.
-+    # In both cases, we have to default to `cp -pR'.
-     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
--      as_ln_s='cp -p'
-+      as_ln_s='cp -pR'
-   elif ln conf$$.file conf$$ 2>/dev/null; then
-     as_ln_s=ln
-   else
--    as_ln_s='cp -p'
-+    as_ln_s='cp -pR'
-   fi
- else
--  as_ln_s='cp -p'
-+  as_ln_s='cp -pR'
- fi
- rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
- rmdir conf$$.dir 2>/dev/null
-@@ -504,28 +544,8 @@
-   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
-+as_test_x='test -x'
-+as_executable_p=as_fn_executable_p
- 
- # 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'"
-@@ -651,10 +671,10 @@
+--- configure.orig	2013-07-11 09:28:16.000000000 -0600
++++ configure	2013-08-26 13:49:54.000000000 -0600
+@@ -671,10 +671,10 @@
  XMKMF
  GMPDIR
  GMP
@@ -2221,151 +2179,7 @@
  AWK
  CPP
  OBJEXT
-@@ -1211,8 +1231,6 @@
- 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
-@@ -1496,9 +1514,9 @@
- if $ac_init_version; then
-   cat <<\_ACEOF
- configure
--generated by GNU Autoconf 2.68
-+generated by GNU Autoconf 2.69
- 
--Copyright (C) 2010 Free Software Foundation, Inc.
-+Copyright (C) 2012 Free Software Foundation, Inc.
- This configure script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it.
- _ACEOF
-@@ -1885,7 +1903,8 @@
- main ()
- {
- static int test_array [1 - 2 * !(($2) >= 0)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
- 
-   ;
-   return 0;
-@@ -1901,7 +1920,8 @@
- main ()
- {
- static int test_array [1 - 2 * !(($2) <= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
- 
-   ;
-   return 0;
-@@ -1927,7 +1947,8 @@
- main ()
- {
- static int test_array [1 - 2 * !(($2) < 0)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
- 
-   ;
-   return 0;
-@@ -1943,7 +1964,8 @@
- main ()
- {
- static int test_array [1 - 2 * !(($2) >= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
- 
-   ;
-   return 0;
-@@ -1977,7 +1999,8 @@
- main ()
- {
- static int test_array [1 - 2 * !(($2) <= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
- 
-   ;
-   return 0;
-@@ -2050,7 +2073,7 @@
- running configure, to aid debugging if configure makes a mistake.
- 
- It was created by $as_me, which was
--generated by GNU Autoconf 2.68.  Invocation command line was
-+generated by GNU Autoconf 2.69.  Invocation command line was
- 
-   $ $0 $@
- 
-@@ -3086,7 +3109,7 @@
-   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 as_fn_executable_p "$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
-@@ -3126,7 +3149,7 @@
-   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 as_fn_executable_p "$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
-@@ -3179,7 +3202,7 @@
-   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 as_fn_executable_p "$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
-@@ -3220,7 +3243,7 @@
-   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 as_fn_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
-@@ -3278,7 +3301,7 @@
-   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 as_fn_executable_p "$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
-@@ -3322,7 +3345,7 @@
-   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 as_fn_executable_p "$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
-@@ -3768,8 +3791,7 @@
- /* end confdefs.h.  */
- #include <stdarg.h>
- #include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
-+struct stat;
- /* 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);
-@@ -4023,7 +4045,14 @@
+@@ -4045,7 +4045,14 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -2381,16 +2195,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    TCFLAGS="$TCFLAGS $TMPF";{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -4091,7 +4120,7 @@
-   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 as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-     ac_cv_prog_AWK="$ac_prog"
-     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-     break 2
-@@ -4269,51 +4298,6 @@
+@@ -4291,51 +4298,6 @@
  $as_echo_n "checking system version (for dynamic loading)... " >&6; }
  if machine=`uname -m` ; then true; else machine=unknown ; fi
  
@@ -2412,7 +2217,7 @@
 -  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 as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 -    ac_cv_prog_MAKEINFO="$ac_prog"
 -    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 -    break 2
@@ -2442,34 +2247,7 @@
  if test -f /usr/lib/NextStep/software_version; then
      system=NEXTSTEP-`${AWK} '/3/,/3/' /usr/lib/NextStep/software_version`
  else
-@@ -4356,7 +4340,7 @@
-     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
-+      as_fn_executable_p "$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
-@@ -4422,7 +4406,7 @@
-     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
-+      as_fn_executable_p "$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
-@@ -4663,7 +4647,7 @@
- 	 test ! -s conftest.err
-        } && test -s conftest$ac_exeext && {
- 	 test "$cross_compiling" = yes ||
--	 $as_test_x conftest$ac_exeext
-+	 test -x conftest$ac_exeext
-        }; then :
-   ac_retval=0
- else
-@@ -4711,22 +4695,29 @@
+@@ -4744,22 +4706,29 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_sysconf" >&5
  $as_echo "$ac_cv_lib_c_sysconf" >&6; }
  if test "x$ac_cv_lib_c_sysconf" = xyes; then :
@@ -2505,8 +2283,8 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    hz=`cat conftest1`
-@@ -4750,6 +4741,117 @@
- 
+@@ -4784,6 +4753,117 @@
+ done
  
  
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
@@ -2623,7 +2401,7 @@
  
  #MY_SUBDIRS=
  
-@@ -4803,25 +4905,36 @@
+@@ -4842,25 +4922,36 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gmp___gmpz_init" >&5
  $as_echo "$ac_cv_lib_gmp___gmpz_init" >&6; }
  if test "x$ac_cv_lib_gmp___gmpz_init" = xyes; then :
@@ -2666,7 +2444,7 @@
  				MPFILES=
  				PATCHED_SYMBOLS=
  #				if test "$use" = "m68k-linux" ; then
-@@ -4834,7 +4947,8 @@
+@@ -4873,7 +4964,8 @@
  				MP_INCLUDE=`cpp foo.c | grep /gmp.h | head -n 1 | $AWK '{print $3}' | tr -d '"'`
  				rm -f foo.c
  else
@@ -2676,7 +2454,7 @@
  fi
  rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
    conftest.$ac_objext conftest.beam conftest.$ac_ext
-@@ -4894,8 +5008,8 @@
+@@ -4934,8 +5026,8 @@
  
  fi
  
@@ -2687,7 +2465,7 @@
  cat>foo.c <<EOFF
  #include <math.h>
  #include <stdio.h>
-@@ -4906,45 +5020,53 @@
+@@ -4946,45 +5038,53 @@
  	LEADING_UNDERSCORE=1
  	$as_echo "#define LEADING_UNDERSCORE 1" >>confdefs.h
  
@@ -2756,7 +2534,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    mpsize=`cat conftest1`
-@@ -4956,8 +5078,7 @@
+@@ -4996,8 +5096,7 @@
  fi
  
   if test "$mpsize" = "0" ; then
@@ -2766,7 +2544,7 @@
   fi
   cat >>confdefs.h <<_ACEOF
  #define MP_LIMB_BYTES $mpsize
-@@ -4966,23 +5087,31 @@
+@@ -5006,23 +5105,31 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $mpsize" >&5
  $as_echo "$mpsize" >&6; }
  
@@ -2803,7 +2581,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    $as_echo "#define __SHORT_LIMB 1" >>confdefs.h
-@@ -4996,23 +5125,31 @@
+@@ -5036,23 +5143,31 @@
    conftest.$ac_objext conftest.beam conftest.$ac_ext
  fi
  
@@ -2840,7 +2618,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    $as_echo "#define __LONG_LONG_LIMB 1" >>confdefs.h
-@@ -5351,8 +5488,7 @@
+@@ -5391,8 +5506,7 @@
  fi
  
   	if test "$have_dl" = "0" ; then
@@ -2850,7 +2628,7 @@
   	fi
  
  	TLIBS="$TLIBS -ldl -rdynamic"
-@@ -5410,9 +5546,17 @@
+@@ -5455,9 +5569,17 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -2870,7 +2648,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-@@ -5423,10 +5567,18 @@
+@@ -5468,10 +5590,18 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -2891,7 +2669,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -5459,18 +5611,26 @@
+@@ -5505,18 +5635,26 @@
  # BFD boolean syntax
  #
  
@@ -2922,7 +2700,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -5499,9 +5659,17 @@
+@@ -5545,9 +5683,17 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -2942,7 +2720,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -5832,14 +6000,14 @@
+@@ -5878,14 +6024,14 @@
       *)
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking __builtin___clear_cache" >&5
  $as_echo_n "checking __builtin___clear_cache... " >&6; }
@@ -2959,7 +2737,7 @@
  
    ;
    return 0;
-@@ -5902,26 +6070,34 @@
+@@ -5948,26 +6094,34 @@
  # work around MSYS pwd result incompatibility
  if test "$use" = "mingw" ; then
  if test "$cross_compiling" = yes; then :
@@ -2999,7 +2777,7 @@
  fi
  rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
    conftest.$ac_objext conftest.beam conftest.$ac_ext
-@@ -5929,26 +6105,34 @@
+@@ -5975,26 +6129,34 @@
  
  else
  if test "$cross_compiling" = yes; then :
@@ -3039,7 +2817,7 @@
  fi
  rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
    conftest.$ac_objext conftest.beam conftest.$ac_ext
-@@ -5975,7 +6159,11 @@
+@@ -6021,7 +6183,11 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3052,7 +2830,7 @@
    /* Are we little or big endian?  Adapted from Harbison&Steele.  */
    union
    {
-@@ -5984,6 +6172,9 @@
+@@ -6030,6 +6196,9 @@
    } u;
    u.d = 1.0;
    return u.l[sizeof(double)/sizeof(int)-1] ? 0 : 1;
@@ -3062,7 +2840,7 @@
  }
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
-@@ -6014,15 +6205,23 @@
+@@ -6060,15 +6229,23 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3090,7 +2868,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    HAVE_SBRK=1
-@@ -6049,14 +6248,22 @@
+@@ -6101,14 +6278,22 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3117,7 +2895,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    ADDR_NO_RANDOMIZE=`cat conftest1`
-@@ -6086,7 +6293,8 @@
+@@ -6138,7 +6323,8 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3127,7 +2905,7 @@
  		    int main(int argc,char *argv[],char *envp[]) {
  	            #include "h/unrandomize.h"
  		    return 0;}
-@@ -6118,8 +6326,9 @@
+@@ -6170,8 +6356,9 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3139,7 +2917,7 @@
  		    int main(int argc,char * argv[],char * envp[]) {
  			FILE *f;
  			#ifdef CAN_UNRANDOMIZE_SBRK
-@@ -6139,17 +6348,16 @@
+@@ -6191,17 +6378,16 @@
  fi
  
  	if test "$SBRK" = "0" ; then
@@ -3161,7 +2939,7 @@
  		    int main(int argc,char * argv[],char * envp[]) {
  			FILE *f;
  			#ifdef CAN_UNRANDOMIZE_SBRK
-@@ -6169,9 +6377,7 @@
+@@ -6221,9 +6407,7 @@
  fi
  
  	if test "$SBRK1" = "0" ; then
@@ -3172,7 +2950,7 @@
  	fi
  	if test "$SBRK" = "$SBRK1" ; then
  		{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-@@ -6195,14 +6401,23 @@
+@@ -6247,14 +6431,23 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3199,7 +2977,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    PAGEWIDTH=`cat conftest1`
-@@ -6224,17 +6439,18 @@
+@@ -6276,17 +6469,18 @@
  
  old_LDFLAGS="$LDFLAGS"
  LDFLAGS="$TLDFLAGS"
@@ -3222,7 +3000,7 @@
  int
  main(int argc,char * argv[],char *envp[])
  {
-@@ -6279,21 +6495,28 @@
+@@ -6331,21 +6525,28 @@
  LDFLAGS="$old_LDFLAGS"
  
  
@@ -3254,7 +3032,7 @@
  }
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
-@@ -6315,8 +6538,8 @@
+@@ -6367,8 +6568,8 @@
  
  
  
@@ -3265,7 +3043,7 @@
  if test "$cross_compiling" = yes; then :
    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
  $as_echo "no" >&6; }
-@@ -6324,13 +6547,19 @@
+@@ -6376,13 +6577,19 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3287,7 +3065,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
    $as_echo "#define HAVE_LONG_LONG 1" >>confdefs.h
-@@ -6836,8 +7065,6 @@
+@@ -6888,8 +7095,6 @@
  #	   To get around this problem, check for both libraries together
  #	   if -lsocket doesn't work by itself.
  #--------------------------------------------------------------------
@@ -3296,7 +3074,7 @@
  tcl_checkBoth=0
  ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect"
  if test "x$ac_cv_func_connect" = xyes; then :
-@@ -7049,8 +7276,8 @@
+@@ -7101,8 +7306,8 @@
  
  
  
@@ -3307,7 +3085,7 @@
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  
-@@ -7074,7 +7301,7 @@
+@@ -7126,7 +7331,7 @@
  int
  main ()
  {
@@ -3316,7 +3094,7 @@
      gethostbyname("jil");
      socket(AF_INET, SOCK_STREAM, 0);
  
-@@ -7095,10 +7322,11 @@
+@@ -7147,10 +7352,11 @@
      conftest$ac_exeext conftest.$ac_ext
  
  
@@ -3330,7 +3108,7 @@
  #include <stdio.h>
  #include <fcntl.h>
  
-@@ -7174,7 +7402,7 @@
+@@ -7226,7 +7432,7 @@
    $EGREP "LITTLE_ENDIAN" >/dev/null 2>&1; then :
    gcl_ok=yes
  else
@@ -3339,7 +3117,7 @@
  fi
  rm -f conftest*
  
-@@ -7218,17 +7446,17 @@
+@@ -7270,17 +7476,17 @@
  esac
  
  
@@ -3361,7 +3139,7 @@
    ;
    return 0;
  }
-@@ -7245,17 +7473,17 @@
+@@ -7297,17 +7503,17 @@
  fi
  rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
  
@@ -3383,7 +3161,7 @@
    ;
    return 0;
  }
-@@ -7273,17 +7501,17 @@
+@@ -7325,17 +7531,17 @@
  rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
  
  
@@ -3405,7 +3183,7 @@
    ;
    return 0;
  }
-@@ -7328,11 +7556,12 @@
+@@ -7380,11 +7586,12 @@
  
  done
  
@@ -3422,7 +3200,7 @@
  
  int
  main ()
-@@ -7360,11 +7589,12 @@
+@@ -7412,11 +7619,12 @@
  fi
  rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
         if test "$sigcontext_works" = 0 ; then
@@ -3438,16 +3216,7 @@
               #ifdef HAVE_ASM_SIGCONTEXT_H
               #include <asm/sigcontext.h>
               #endif
-@@ -7435,7 +7665,7 @@
-   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 as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-     ac_cv_path_EMACS="$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
-@@ -7543,26 +7773,41 @@
+@@ -7595,26 +7803,41 @@
  
  if test "$enable_tcltk" = "yes" ; then
  
@@ -3507,16 +3276,7 @@
  
  # Extract the first word of "tclsh", so it can be a program name with args.
  set dummy tclsh; ac_word=$2
-@@ -7580,7 +7825,7 @@
-   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 as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-     ac_cv_prog_TCLSH="tclsh"
-     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
-     break 2
-@@ -7602,7 +7847,26 @@
+@@ -7654,7 +7877,26 @@
  fi
  
  
@@ -3544,7 +3304,7 @@
  
  if test "${TCLSH}" = "" ; then true ; else
  TCL_CONFIG_PREFIX=`${TCLSH} < conftest.tcl`
-@@ -7677,42 +7941,6 @@
+@@ -7729,42 +7971,6 @@
  
  fi
  
@@ -3587,7 +3347,7 @@
  if test "$have_ieee" = "0" ; then
   TCL_LIBS=`echo ${TCL_LIBS} | sed -e "s:-lieee::g" `
  fi
-@@ -7758,14 +7986,23 @@
+@@ -7810,14 +8016,23 @@
  
  # the time handling for unixtime, add timezone
  
@@ -3614,7 +3374,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
  
-@@ -7787,8 +8024,16 @@
+@@ -7839,8 +8054,16 @@
  else
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
@@ -3633,7 +3393,7 @@
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
  
-@@ -7820,8 +8065,6 @@
+@@ -7872,8 +8095,6 @@
  
  
  
@@ -3642,7 +3402,7 @@
  # dlopen etc
  # idea make it so you do something dlopen(libX.so,RTLD_GLOBAL)
  # then dlload("foo.o") a lisp file can refer to things in libX.so
-@@ -7845,8 +8088,8 @@
+@@ -7897,8 +8118,8 @@
  
  # redhat/cygnus released for some reason a buggy version of gcc,
  # which no one else released.   Catch that here.
@@ -3653,7 +3413,7 @@
  if  2>&1 $CC -v | fgrep "gcc version 2.96" > /dev/null
     then
          BROKEN_O4_OPT=1
-@@ -7886,7 +8129,7 @@
+@@ -7938,7 +8159,7 @@
  
    ac_config_files="$ac_config_files makedefc windows/gcl.iss windows/sysdir.bat windows/install.lsp"
  
@@ -3662,99 +3422,8 @@
  # 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.
-@@ -8293,16 +8536,16 @@
-     # ... 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'.
-+    # In both cases, we have to default to `cp -pR'.
-     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
--      as_ln_s='cp -p'
-+      as_ln_s='cp -pR'
-   elif ln conf$$.file conf$$ 2>/dev/null; then
-     as_ln_s=ln
-   else
--    as_ln_s='cp -p'
-+    as_ln_s='cp -pR'
-   fi
- else
--  as_ln_s='cp -p'
-+  as_ln_s='cp -pR'
- fi
- rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
- rmdir conf$$.dir 2>/dev/null
-@@ -8362,28 +8605,16 @@
-   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
-+
-+# as_fn_executable_p FILE
-+# -----------------------
-+# Test if FILE is an executable regular file.
-+as_fn_executable_p ()
-+{
-+  test -f "$1" && test -x "$1"
-+} # as_fn_executable_p
-+as_test_x='test -x'
-+as_executable_p=as_fn_executable_p
- 
- # 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'"
-@@ -8405,7 +8636,7 @@
- # values after options handling.
- ac_log="
- This file was extended by $as_me, which was
--generated by GNU Autoconf 2.68.  Invocation command line was
-+generated by GNU Autoconf 2.69.  Invocation command line was
- 
-   CONFIG_FILES    = $CONFIG_FILES
-   CONFIG_HEADERS  = $CONFIG_HEADERS
-@@ -8467,10 +8698,10 @@
- ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
- ac_cs_version="\\
- config.status
--configured by $0, generated by GNU Autoconf 2.68,
-+configured by $0, generated by GNU Autoconf 2.69,
-   with options \\"\$ac_cs_config\\"
- 
--Copyright (C) 2010 Free Software Foundation, Inc.
-+Copyright (C) 2012 Free Software Foundation, Inc.
- This config.status script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it."
- 
-@@ -8558,7 +8789,7 @@
- _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
-+  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'
---- ./install.sh.orig	1999-12-06 15:43:54.000000000 -0700
-+++ ./install.sh	2012-09-26 08:03:18.000000000 -0600
+--- install.sh.orig	2013-07-11 09:28:16.000000000 -0600
++++ install.sh	2013-06-17 03:16:35.000000000 -0600
 @@ -1,250 +1,527 @@
 -#! /bin/sh
 -#
@@ -4466,8 +4135,8 @@
 +# time-stamp-time-zone: "UTC"
 +# time-stamp-end: "; # UTC"
 +# End:
---- ./ltmain.sh.orig	2002-08-08 23:49:32.000000000 -0600
-+++ ./ltmain.sh	2012-09-23 01:32:05.000000000 -0600
+--- ltmain.sh.orig	2013-07-11 09:28:16.000000000 -0600
++++ ltmain.sh	2013-06-04 01:27:29.000000000 -0600
 @@ -1,199 +1,924 @@
 -# ltmain.sh - Provide generalized library-building support services.
 -# NOTE: Changing this file will not affect anything until you rerun ltconfig.
@@ -5546,7 +5215,7 @@
      echo "host: $host"
      if test "$build_libtool_libs" = yes; then
        echo "enable shared libraries"
-@@ -205,349 +930,1189 @@ do
+@@ -205,349 +930,1189 @@
      else
        echo "disable static libraries"
      fi
@@ -7011,7 +6680,7 @@
  
      # Delete any leftover library objects.
      if test "$build_old_libs" = yes; then
-@@ -556,16 +2121,13 @@ if test -z "$show_help"; then
+@@ -556,16 +2121,13 @@
        removelist="$lobj $libobj ${libobj}T"
      fi
  
@@ -7030,7 +6699,7 @@
        # non-PIC code in shared libraries is not supported
        pic_mode=default
      fi
-@@ -573,10 +2135,8 @@ if test -z "$show_help"; then
+@@ -573,10 +2135,8 @@
      # Calculate the filename of the output object if compiler does
      # not support -o with -c
      if test "$compiler_c_o" = no; then
@@ -7042,7 +6711,7 @@
      else
        output_obj=
        need_locks=no
-@@ -586,13 +2146,13 @@ if test -z "$show_help"; then
+@@ -586,13 +2146,13 @@
      # Lock this critical section if it is needed
      # We use this script file to make the link, it avoids creating a new file
      if test "$need_locks" = yes; then
@@ -7059,7 +6728,7 @@
  *** ERROR, $lockfile exists and contains:
  `cat $lockfile 2>/dev/null`
  
-@@ -603,29 +2163,21 @@ repeat this compilation, it may succeed,
+@@ -603,29 +2163,21 @@
  avoid parallel builds (make -j) in this platform, or get a better
  compiler."
  
@@ -7100,7 +6769,7 @@
  
      # Only build a PIC object if we are building libtool libraries.
      if test "$build_libtool_libs" = yes; then
-@@ -633,38 +2185,25 @@ EOF
+@@ -633,38 +2185,25 @@
        fbsd_hideous_sh_bug=$base_compile
  
        if test "$pic_mode" != no; then
@@ -7148,7 +6817,7 @@
  *** ERROR, $lockfile contains:
  `cat $lockfile 2>/dev/null`
  
-@@ -678,63 +2217,42 @@ repeat this compilation, it may succeed,
+@@ -678,63 +2217,42 @@
  avoid parallel builds (make -j) in this platform, or get a better
  compiler."
  
@@ -7228,7 +6897,7 @@
  *** ERROR, $lockfile contains:
  `cat $lockfile 2>/dev/null`
  
-@@ -748,57 +2266,2839 @@ repeat this compilation, it may succeed,
+@@ -748,57 +2266,2839 @@
  avoid parallel builds (make -j) in this platform, or get a better
  compiler."
  
@@ -10098,7 +9767,7 @@
        # allow_undefined=no
  
        # FIXME: Unfortunately, there are problems with the above when trying
-@@ -812,10 +5112,10 @@ EOF
+@@ -812,10 +5112,10 @@
        allow_undefined=yes
        ;;
      esac
@@ -10113,7 +9782,7 @@
  
      compile_rpath=
      finalize_rpath=
-@@ -829,8 +5129,11 @@ EOF
+@@ -829,8 +5129,11 @@
      linker_flags=
      dllsearchpath=
      lib_search_path=`pwd`
@@ -10125,7 +9794,7 @@
      dlfiles=
      dlprefiles=
      dlself=no
-@@ -844,6 +5147,7 @@ EOF
+@@ -844,6 +5147,7 @@
      no_install=no
      objs=
      non_pic_objects=
@@ -10133,7 +9802,7 @@
      prefer_static_libs=no
      preload=no
      prev=
-@@ -855,27 +5159,47 @@ EOF
+@@ -855,27 +5159,47 @@
      temp_rpath=
      thread_safe=no
      vinfo=
@@ -10187,7 +9856,7 @@
  	break
  	;;
        esac
-@@ -885,33 +5209,33 @@ EOF
+@@ -885,33 +5209,33 @@
      test -n "$old_archive_from_new_cmds" && build_old_libs=yes
  
      # Go through the arguments, transforming them on the way.
@@ -10234,7 +9903,7 @@
  	    preload=yes
  	  fi
  	  case $arg in
-@@ -938,9 +5262,9 @@ EOF
+@@ -938,9 +5262,9 @@
  	    ;;
  	  *)
  	    if test "$prev" = dlfiles; then
@@ -10246,7 +9915,7 @@
  	    fi
  	    prev=
  	    continue
-@@ -949,10 +5273,8 @@ EOF
+@@ -949,10 +5273,8 @@
  	  ;;
  	expsyms)
  	  export_symbols="$arg"
@@ -10259,7 +9928,7 @@
  	  prev=
  	  continue
  	  ;;
-@@ -961,115 +5283,127 @@ EOF
+@@ -961,115 +5283,127 @@
  	  prev=
  	  continue
  	  ;;
@@ -10473,7 +10142,7 @@
  	  prev=
  	  continue
  	  ;;
-@@ -1078,37 +5412,54 @@ EOF
+@@ -1078,37 +5412,54 @@
  	  case $arg in
  	  [\\/]* | [A-Za-z]:[\\/]*) ;;
  	  *)
@@ -10539,7 +10208,7 @@
  	  continue
  	  ;;
  	*)
-@@ -1117,23 +5468,23 @@ EOF
+@@ -1117,23 +5468,23 @@
  	  continue
  	  ;;
  	esac
@@ -10568,7 +10237,7 @@
  	;;
  
        -avoid-version)
-@@ -1141,6 +5492,11 @@ EOF
+@@ -1141,6 +5492,11 @@
  	continue
  	;;
  
@@ -10580,7 +10249,7 @@
        -dlopen)
  	prev=dlfiles
  	continue
-@@ -1158,8 +5514,7 @@ EOF
+@@ -1158,8 +5514,7 @@
  
        -export-symbols | -export-symbols-regex)
  	if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
@@ -10590,7 +10259,7 @@
  	fi
  	if test "X$arg" = "X-export-symbols"; then
  	  prev=expsyms
-@@ -1169,44 +5524,74 @@ EOF
+@@ -1169,44 +5524,74 @@
  	continue
  	;;
  
@@ -10678,7 +10347,7 @@
  	  esac
  	  ;;
  	esac
-@@ -1216,17 +5601,41 @@ EOF
+@@ -1216,17 +5601,41 @@
        -l*)
  	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
  	  case $host in
@@ -10723,7 +10392,7 @@
  	continue
  	;;
  
-@@ -1235,6 +5644,34 @@ EOF
+@@ -1235,6 +5644,34 @@
  	continue
  	;;
  
@@ -10758,7 +10427,7 @@
        -no-fast-install)
  	fast_install=no
  	continue
-@@ -1242,11 +5679,11 @@ EOF
+@@ -1242,11 +5679,11 @@
  
        -no-install)
  	case $host in
@@ -10774,7 +10443,7 @@
  	  fast_install=no
  	  ;;
  	*) no_install=yes ;;
-@@ -1266,6 +5703,11 @@ EOF
+@@ -1266,6 +5703,11 @@
  
        -o) prev=output ;;
  
@@ -10786,7 +10455,7 @@
        -release)
  	prev=release
  	continue
-@@ -1282,23 +5724,37 @@ EOF
+@@ -1282,23 +5724,37 @@
  	;;
  
        -R*)
@@ -10829,7 +10498,7 @@
  	# The effects of -static are defined in a previous loop.
  	# We used to do the same as -all-static on platforms that
  	# didn't have a PIC flag, but the assumption that the effects
-@@ -1317,41 +5773,48 @@ EOF
+@@ -1317,41 +5773,48 @@
  	continue
  	;;
  
@@ -10899,7 +10568,7 @@
  	;;
  
        -Xcompiler)
-@@ -1364,136 +5827,156 @@ EOF
+@@ -1364,136 +5827,156 @@
  	continue
  	;;
  
@@ -11133,7 +10802,7 @@
  	fi
  	continue
  	;;
-@@ -1502,113 +5985,53 @@ EOF
+@@ -1502,113 +5985,53 @@
        *)
  	# Unknown arguments in both finalize_command and compile_command need
  	# to be aesthetically quoted because they are evaled later.
@@ -11265,7 +10934,7 @@
        ;;
      *.$libext) linkmode=oldlib ;;
      *.lo | *.$objext) linkmode=obj ;;
-@@ -1617,29 +6040,34 @@ EOF
+@@ -1617,29 +6040,34 @@
      esac
  
      specialdeplibs=
@@ -11311,7 +10980,7 @@
        pre_post_deps=
      fi
  
-@@ -1649,15 +6077,15 @@ EOF
+@@ -1649,15 +6077,15 @@
      need_relink=no # whether we're linking any uninstalled libtool libraries
      notinst_deplibs= # not-installed libtool libraries
      notinst_path= # paths that contain not-installed libtool libraries
@@ -11330,7 +10999,7 @@
  	    ;;
  	  esac
  	done
-@@ -1673,40 +6101,106 @@ EOF
+@@ -1673,40 +6101,106 @@
      *)  passes="conv"
  	;;
      esac
@@ -11457,7 +11126,7 @@
  	  done
  	  if test "$found" != yes; then
  	    # deplib doesn't seem to be a libtool library
-@@ -1715,74 +6209,153 @@ EOF
+@@ -1715,74 +6209,153 @@
  	      finalize_deplibs="$deplib $finalize_deplibs"
  	    else
  	      deplibs="$deplib $deplibs"
@@ -11636,7 +11305,7 @@
  	      deplibs="$deplib $deplibs"
  	    else
  	      compile_deplibs="$deplib $compile_deplibs"
-@@ -1793,14 +6366,18 @@ EOF
+@@ -1793,14 +6366,18 @@
  	  esac # linkmode
  	  ;; # *.$libext
  	*.lo | *.$objext)
@@ -11663,7 +11332,7 @@
  	  fi
  	  continue
  	  ;;
-@@ -1809,21 +6386,18 @@ EOF
+@@ -1809,21 +6386,18 @@
  	  continue
  	  ;;
  	esac # case $deplib
@@ -11692,7 +11361,7 @@
  
  	dlname=
  	dlopen=
-@@ -1831,72 +6405,92 @@ EOF
+@@ -1831,72 +6405,92 @@
  	libdir=
  	library_names=
  	old_library=
@@ -11821,7 +11490,7 @@
  	  fi
  	  continue
  	fi # $pass = dlopen
-@@ -1907,66 +6501,106 @@ EOF
+@@ -1907,66 +6501,106 @@
  	*)
  	  abs_ladir=`cd "$ladir" && pwd`
  	  if test -z "$abs_ladir"; then
@@ -11958,7 +11627,7 @@
  	  deplibs="$lib $deplibs"
  
  	  linkalldeplibs=no
-@@ -1978,31 +6612,43 @@ EOF
+@@ -1978,31 +6612,43 @@
  	  tmp_libs=
  	  for deplib in $dependency_libs; do
  	    case $deplib in
@@ -12014,7 +11683,7 @@
  	    # Hardcode the library path.
  	    # Skip directories that are in the system default run-time
  	    # search path.
-@@ -2011,7 +6657,7 @@ EOF
+@@ -2011,7 +6657,7 @@
  	    *)
  	      case "$compile_rpath " in
  	      *" $absdir "*) ;;
@@ -12023,7 +11692,7 @@
  	      esac
  	      ;;
  	    esac
-@@ -2020,21 +6666,10 @@ EOF
+@@ -2020,21 +6666,10 @@
  	    *)
  	      case "$finalize_rpath " in
  	      *" $libdir "*) ;;
@@ -12046,7 +11715,7 @@
  	  fi # $linkmode,$pass = prog,link...
  
  	  if test "$alldeplibs" = yes &&
-@@ -2044,26 +6679,89 @@ EOF
+@@ -2044,26 +6679,89 @@
  	    # We only need to search for static libraries
  	    continue
  	  fi
@@ -12144,7 +11813,7 @@
  		versuffix="-$major"
  		;;
  	      esac
-@@ -2074,41 +6772,29 @@ EOF
+@@ -2074,41 +6772,29 @@
  
  	    # Make a new name for the extract_expsyms_cmds to use
  	    soroot="$soname"
@@ -12196,7 +11865,7 @@
  	    add_shlibpath=
  	    add_dir=
  	    add=
-@@ -2117,6 +6803,30 @@ EOF
+@@ -2117,6 +6803,30 @@
  	    immediate | unsupported)
  	      if test "$hardcode_direct" = no; then
  		add="$dir/$linklib"
@@ -12227,7 +11896,7 @@
  	      elif test "$hardcode_minus_L" = no; then
  		case $host in
  		*-*-sunos*) add_shlibpath="$dir" ;;
-@@ -2131,10 +6841,19 @@ EOF
+@@ -2131,10 +6841,19 @@
  	      fi
  	      ;;
  	    relink)
@@ -12249,7 +11918,7 @@
  		add="-l$name"
  	      elif test "$hardcode_shlibpath_var" = yes; then
  		add_shlibpath="$dir"
-@@ -2147,39 +6866,39 @@ EOF
+@@ -2147,39 +6866,39 @@
  	    esac
  
  	    if test "$lib_linked" != yes; then
@@ -12298,7 +11967,7 @@
  	      add="$libdir/$linklib"
  	    elif test "$hardcode_minus_L" = yes; then
  	      add_dir="-L$libdir"
-@@ -2187,16 +6906,31 @@ EOF
+@@ -2187,16 +6906,31 @@
  	    elif test "$hardcode_shlibpath_var" = yes; then
  	      case :$finalize_shlibpath: in
  	      *":$libdir:"*) ;;
@@ -12332,7 +12001,7 @@
  	      test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
  	      test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
  	    else
-@@ -2204,16 +6938,7 @@ EOF
+@@ -2204,16 +6938,7 @@
  	      test -n "$add" && deplibs="$add $deplibs"
  	    fi
  	  fi
@@ -12350,7 +12019,7 @@
  	  # Here we assume that one of hardcode_direct or hardcode_minus_L
  	  # is not unsupported.  This is valid on all known static and
  	  # shared platforms.
-@@ -2234,101 +6959,133 @@ EOF
+@@ -2234,101 +6959,133 @@
  	    # Just print a warning and add the library to dependency_libs so
  	    # that the program can be linked against the static library.
  	    echo
@@ -12522,7 +12191,7 @@
  	      esac
  	      case " $deplibs " in
  	      *" $path "*) ;;
-@@ -2338,21 +7095,29 @@ EOF
+@@ -2338,21 +7095,29 @@
  	  fi # link_all_deplibs != no
  	fi # linkmode = lib
        done # for deplib in $libs
@@ -12557,7 +12226,7 @@
  	    esac
  	  done
  	  newlib_search_path=
-@@ -2368,9 +7133,30 @@ EOF
+@@ -2368,9 +7133,30 @@
  	  eval tmp_libs=\"\$$var\"
  	  new_libs=
  	  for deplib in $tmp_libs; do
@@ -12588,7 +12257,7 @@
  	      case " $specialdeplibs " in
  	      *" $deplib "*) new_libs="$deplib $new_libs" ;;
  	      *)
-@@ -2389,171 +7175,217 @@ EOF
+@@ -2389,171 +7175,217 @@
  	    -L*)
  	      case " $tmp_libs " in
  	      *" $deplib "*) ;;
@@ -12884,7 +12553,7 @@
  	fi
  
  	# Calculate the version variables.
-@@ -2566,10 +7398,13 @@ EOF
+@@ -2566,10 +7398,13 @@
  	darwin)
  	  # Like Linux, but with the current version available in
  	  # verstring for coding it into the library header
@@ -12900,7 +12569,7 @@
  	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
  	  ;;
  
-@@ -2580,19 +7415,31 @@ EOF
+@@ -2580,19 +7415,31 @@
  
  	freebsd-elf)
  	  major=".$current"
@@ -12940,7 +12609,7 @@
  	  done
  
  	  # Before this point, $major must not contain `.'.
-@@ -2600,26 +7447,35 @@ EOF
+@@ -2600,26 +7447,35 @@
  	  versuffix="$major.$revision"
  	  ;;
  
@@ -12983,7 +12652,7 @@
  	  ;;
  
  	sunos)
-@@ -2630,21 +7486,29 @@ EOF
+@@ -2630,21 +7486,29 @@
  	windows)
  	  # Use '-' rather than '.', since we only want one
  	  # extension on DOS 8.3 filesystems.
@@ -13018,7 +12687,7 @@
  	  if test "$need_version" = no; then
  	    versuffix=
  	  else
-@@ -2662,7 +7526,7 @@ EOF
+@@ -2662,7 +7526,7 @@
  	# Check to see if the archive will have undefined symbols.
  	if test "$allow_undefined" = yes; then
  	  if test "$allow_undefined_flag" = unsupported; then
@@ -13027,7 +12696,7 @@
  	    build_libtool_libs=no
  	    build_old_libs=yes
  	  fi
-@@ -2670,55 +7534,65 @@ EOF
+@@ -2670,55 +7534,65 @@
  	  # Don't allow undefined symbols.
  	  allow_undefined_flag="$no_undefined_flag"
  	fi
@@ -13120,7 +12789,7 @@
  	  dependency_libs="$temp_xrpath $dependency_libs"
  	fi
        fi
-@@ -2729,7 +7603,7 @@ EOF
+@@ -2729,7 +7603,7 @@
        for lib in $old_dlfiles; do
  	case " $dlprefiles $dlfiles " in
  	*" $lib "*) ;;
@@ -13129,7 +12798,7 @@
  	esac
        done
  
-@@ -2739,27 +7613,36 @@ EOF
+@@ -2739,27 +7613,36 @@
        for lib in $old_dlprefiles; do
  	case "$dlprefiles " in
  	*" $lib "*) ;;
@@ -13171,7 +12840,7 @@
  	    fi
  	    ;;
  	  esac
-@@ -2785,7 +7668,7 @@ EOF
+@@ -2785,7 +7668,7 @@
  	  # This might be a little naive.  We might want to check
  	  # whether the library exists or not.  But this is on
  	  # osf3 & osf4 and I'm not really sure... Just
@@ -13180,7 +12849,7 @@
  	  newdeplibs=$deplibs
  	  ;;
  	test_compile)
-@@ -2793,90 +7676,139 @@ EOF
+@@ -2793,90 +7676,139 @@
  	  # limits. Maybe even breaks it.  We compile a program, linking it
  	  # against the deplibs as a proxy for the library.  Then we can check
  	  # whether they linked in statically or dynamically with ldd.
@@ -13379,7 +13048,7 @@
  			continue
  		      fi
  		      # The statement above tries to avoid entering an
-@@ -2886,81 +7818,110 @@ EOF
+@@ -2886,81 +7818,110 @@
  		      # but so what?
  		      potlib="$potent_lib"
  		      while test -h "$potlib" 2>/dev/null; do
@@ -13535,7 +13204,7 @@
  	    echo
  	    if test "X$deplibs_check_method" = "Xnone"; then
  	      echo "*** Warning: inter-library dependencies are not supported in this platform."
-@@ -2969,7 +7930,8 @@ EOF
+@@ -2969,7 +7930,8 @@
  	    fi
  	    echo "*** All declared inter-library dependencies are being dropped."
  	    droppeddeps=yes
@@ -13545,7 +13214,7 @@
  	  ;;
  	esac
  	versuffix=$versuffix_save
-@@ -2980,8 +7942,8 @@ EOF
+@@ -2980,8 +7942,8 @@
  
  	case $host in
  	*-*-rhapsody* | *-*-darwin1.[012])
@@ -13556,7 +13225,7 @@
  	  ;;
  	esac
  
-@@ -2989,7 +7951,7 @@ EOF
+@@ -2989,7 +7951,7 @@
  	  if test "$module" = yes; then
  	    echo
  	    echo "*** Warning: libtool could not satisfy all declared inter-library"
@@ -13565,7 +13234,7 @@
  	    echo "*** a static module, that should work as long as the dlopening"
  	    echo "*** application is linked with the -dlopen flag."
  	    if test -z "$global_symbol_pipe"; then
-@@ -3011,7 +7973,7 @@ EOF
+@@ -3011,7 +7973,7 @@
  	    echo "*** automatically added whenever a program is linked with this library"
  	    echo "*** or is declared to -dlopen it."
  
@@ -13574,7 +13243,7 @@
  	      echo
  	      echo "*** Since this library must not contain undefined symbols,"
  	      echo "*** because either the platform does not support them or"
-@@ -3030,6 +7992,41 @@ EOF
+@@ -3030,6 +7992,41 @@
  	# Done checking deplibs!
  	deplibs=$newdeplibs
        fi
@@ -13616,7 +13285,7 @@
  
        # All the library-specific variables (install_libdir is set above).
        library_names=
-@@ -3038,15 +8035,22 @@ EOF
+@@ -3038,15 +8035,22 @@
  
        # Test again, we may have decided not to build it any more
        if test "$build_libtool_libs" = yes; then
@@ -13641,7 +13310,7 @@
  		if test -z "$hardcode_libdirs"; then
  		  hardcode_libdirs="$libdir"
  		else
-@@ -3055,18 +8059,18 @@ EOF
+@@ -3055,18 +8059,18 @@
  		  *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
  		    ;;
  		  *)
@@ -13663,7 +13332,7 @@
  	      esac
  	    fi
  	  done
-@@ -3074,13 +8078,13 @@ EOF
+@@ -3074,13 +8078,13 @@
  	  if test -n "$hardcode_libdir_separator" &&
  	     test -n "$hardcode_libdirs"; then
  	    libdir="$hardcode_libdirs"
@@ -13679,7 +13348,7 @@
  	    done
  	    eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
  	  fi
-@@ -3088,140 +8092,222 @@ EOF
+@@ -3088,140 +8092,222 @@
  	fi
  
  	shlibpath="$finalize_shlibpath"
@@ -13981,7 +13650,7 @@
  
  	  # Save the value of $output and $libobjs because we want to
  	  # use them later.  If we have whole_archive_flag_spec, we
-@@ -3234,109 +8320,255 @@ EOF
+@@ -3234,109 +8320,255 @@
  	  if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
  	    save_libobjs=$libobjs
  	  fi
@@ -14316,7 +13985,7 @@
  	  fi
  	done
  
-@@ -3349,38 +8581,35 @@ EOF
+@@ -3349,38 +8581,35 @@
        ;;
  
      obj)
@@ -14375,7 +14044,7 @@
  	;;
        *)
  	libobj=
-@@ -3389,7 +8618,7 @@ EOF
+@@ -3389,7 +8618,7 @@
        esac
  
        # Delete the old objects.
@@ -14384,7 +14053,7 @@
  
        # Objects from convenience libraries.  This assumes
        # single-version convenience libraries.  Whenever we create
-@@ -3398,150 +8627,141 @@ EOF
+@@ -3398,150 +8627,141 @@
        reload_conv_objs=
        gentop=
        # reload_cmds runs $LD directly, so let us get rid of
@@ -14617,7 +14286,7 @@
  
        if test -n "$rpath$xrpath"; then
  	# If the user specified any rpath flags, then add them.
-@@ -3549,7 +8769,7 @@ EOF
+@@ -3549,7 +8769,7 @@
  	  # This is the magic to use -rpath.
  	  case "$finalize_rpath " in
  	  *" $libdir "*) ;;
@@ -14626,7 +14295,7 @@
  	  esac
  	done
        fi
-@@ -3568,25 +8788,32 @@ EOF
+@@ -3568,25 +8788,32 @@
  	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
  		;;
  	      *)
@@ -14664,7 +14333,7 @@
  	  esac
  	  ;;
  	esac
-@@ -3612,18 +8839,18 @@ EOF
+@@ -3612,18 +8839,18 @@
  	      *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
  		;;
  	      *)
@@ -14686,7 +14355,7 @@
  	  esac
  	fi
        done
-@@ -3635,227 +8862,57 @@ EOF
+@@ -3635,227 +8862,57 @@
        fi
        finalize_rpath="$rpath"
  
@@ -14952,7 +14621,7 @@
        fi
  
        if test -n "$compile_shlibpath$finalize_shlibpath"; then
-@@ -3872,7 +8929,7 @@ static const void *lt_preloaded_setup()
+@@ -3872,7 +8929,7 @@
  	  # We should set the runpath_var.
  	  rpath=
  	  for dir in $perm_rpath; do
@@ -14961,7 +14630,7 @@
  	  done
  	  compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
  	fi
-@@ -3880,7 +8937,7 @@ static const void *lt_preloaded_setup()
+@@ -3880,7 +8937,7 @@
  	  # We should set the runpath_var.
  	  rpath=
  	  for dir in $finalize_perm_rpath; do
@@ -14970,7 +14639,7 @@
  	  done
  	  finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
  	fi
-@@ -3890,13 +8947,19 @@ static const void *lt_preloaded_setup()
+@@ -3890,13 +8947,19 @@
  	# We don't need to create a wrapper script.
  	link_command="$compile_var$compile_command$compile_rpath"
  	# Replace the output file specification.
@@ -14995,7 +14664,7 @@
        fi
  
        if test "$hardcode_action" = relink; then
-@@ -3904,13 +8967,13 @@ static const void *lt_preloaded_setup()
+@@ -3904,13 +8967,13 @@
  	link_command="$compile_var$compile_command$compile_rpath"
  	relink_command="$finalize_var$finalize_command$finalize_rpath"
  
@@ -15012,7 +14681,7 @@
  	  else
  	    # fast_install is set to needless
  	    relink_command=
-@@ -3922,246 +8985,99 @@ static const void *lt_preloaded_setup()
+@@ -3922,246 +8985,99 @@
        fi
  
        # Replace the output file specification.
@@ -15319,7 +14988,7 @@
        ;;
      esac
  
-@@ -4169,7 +9085,7 @@ fi\
+@@ -4169,7 +9085,7 @@
      for oldlib in $oldlibs; do
  
        if test "$build_libtool_libs" = convenience; then
@@ -15328,7 +14997,7 @@
  	addlibs="$convenience"
  	build_libtool_libs=no
        else
-@@ -4177,146 +9093,179 @@ fi\
+@@ -4177,146 +9093,179 @@
  	  oldobjs="$libobjs_save"
  	  build_libtool_libs=no
  	else
@@ -15609,7 +15278,7 @@
  	for installed in no yes; do
  	  if test "$installed" = yes; then
  	    if test -z "$install_libdir"; then
-@@ -4328,50 +9277,109 @@ fi\
+@@ -4328,50 +9277,109 @@
  	    for deplib in $dependency_libs; do
  	      case $deplib in
  	      *.la)
@@ -15745,7 +15414,7 @@
  #
  # Please DO NOT delete this file!
  # It is necessary for linking the library.
-@@ -4385,9 +9393,15 @@ library_names='$library_names'
+@@ -4385,9 +9393,15 @@
  # The name of the static archive.
  old_library='$old_library'
  
@@ -15761,7 +15430,7 @@
  # Version information for $libname.
  current=$current
  age=$age
-@@ -4396,692 +9410,39 @@ revision=$revision
+@@ -4396,692 +9410,39 @@
  # Is this an already installed library?
  installed=$installed
  
@@ -16470,7 +16139,7 @@
      files=
      rmforce=
      exit_status=0
-@@ -5093,49 +9454,47 @@ relink_command=\"$relink_command\""
+@@ -5093,49 +9454,47 @@
      for arg
      do
        case $arg in
@@ -16543,7 +16212,7 @@
        fi
  
        rmfiles="$file"
-@@ -5143,312 +9502,130 @@ relink_command=\"$relink_command\""
+@@ -5143,312 +9502,130 @@
        case $name in
        *.la)
  	# Possibly a libtool archive, so verify it.
@@ -16932,7 +16601,7 @@
  
  # The TAGs below are defined such that we never get into a situation
  # in which we disable both kinds of libraries.  Given conflicting
-@@ -5461,16 +9638,18 @@ exit 0
+@@ -5461,16 +9638,18 @@
  # If a disable-shared tag is given, we'll fallback to a static-only
  # configuration.  But we'll never go from static-only to shared-only.
  
diff --git a/gcl-2.6.8-tcl.patch b/gcl-2.6.8-tcl.patch
new file mode 100644
index 0000000..d8fc723
--- /dev/null
+++ b/gcl-2.6.8-tcl.patch
@@ -0,0 +1,11 @@
+--- ./gcl-tk/tkMain.c.orig	2013-07-11 09:28:16.000000000 -0600
++++ ./gcl-tk/tkMain.c	2013-08-26 15:06:24.547456318 -0600
+@@ -121,7 +121,7 @@ static void
+ TCL_signal_error(x)
+      char *x;
+ {char buf[300] ;
+- sprintf("error %s",x);
++ snprintf(buf,300,"error %s",x);
+  Tcl_Eval(interp,buf);
+  dfprintf(stderr,x);
+ }
diff --git a/gcl-2.6.8-texinfo.patch b/gcl-2.6.8-texinfo.patch
index 57fdcea..3468451 100644
--- a/gcl-2.6.8-texinfo.patch
+++ b/gcl-2.6.8-texinfo.patch
@@ -1,678 +1,492 @@
---- ./info/chap-a.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-a.texi	2013-05-13 10:11:19.756813225 -0600
-@@ -47,7 +47,7 @@ For a list of deprecated features, see @
- @subsection Removed Types
+--- ./info/gcl-si.texi.orig	2013-07-11 09:28:16.000000000 -0600
++++ ./info/gcl-si.texi	2013-08-26 15:12:07.000000000 -0600
+@@ -10,6 +10,7 @@
  
- The @i{type} @t{string-char}
-- at ICindex{string-char}
-+ at ICindex string-char
-  was removed.
+ @c @smallbook
+ @setfilename gcl-si.info
++ at settitle GCL SI Manual
+ @synindex vr fn
  
- @node Removed Operators, Removed Argument Conventions, Removed Types, Removed Language Features
-@@ -56,30 +56,30 @@ The @i{type} @t{string-char}
- The functions
+ @c to update the menus do: 
+--- ./info/gcl-tk.texi.orig	2013-07-11 09:28:16.000000000 -0600
++++ ./info/gcl-tk.texi	2013-08-26 15:12:07.000000000 -0600
+@@ -10,6 +10,7 @@
  
- @t{int-char}
-- at ICindex{int-char}
-+ at ICindex int-char
- ,
- @t{char-bits}
-- at ICindex{char-bits}
-+ at ICindex char-bits
- ,
- @t{char-font}
-- at ICindex{char-font}
-+ at ICindex char-font
- ,
- @t{make-char}
-- at ICindex{make-char}
-+ at ICindex make-char
- ,
- @t{char-bit}
-- at ICindex{char-bit}
-+ at ICindex char-bit
- ,
- @t{set-char-bit}
-- at ICindex{set-char-bit}
-+ at ICindex set-char-bit
- ,
- @t{string-char-p}
-- at ICindex{string-char-p}
-+ at ICindex string-char-p
- ,
+ @c @smallbook
+ @setfilename gcl-tk.info
++ at settitle GCL TK Manual
+ @synindex vr fn
  
- and
- @t{commonp}
-- at ICindex{commonp}
-+ at ICindex commonp
+ @c to update the menus do: 
+--- ./info/chap-1.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-1.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -419,7 +419,7 @@ used in this manual.
+ @node Notational Conventions, Error Terminology, Definitions, Definitions
+ @subsection Notational Conventions
  
- were removed.
+- at ITindex{notation}
++ at ITindex notation
  
-@@ -89,10 +89,10 @@ The @i{special operator} @t{compiler-let
- @subsection Removed Argument Conventions
+ The following notational conventions are used throughout this document.
  
- The @i{font} argument to @b{digit-char}
-- at IRindex{digit-char}
-+ at IRindex digit-char
-  was removed.
- The @i{bits} and @i{font} arguments to @b{code-char}
-- at IRindex{code-char}
-+ at IRindex code-char
+@@ -442,7 +442,7 @@ The following notational conventions are
+ @node Font Key, Modified BNF Syntax, Notational Conventions, Notational Conventions
+ @subsubsection Font Key
  
- were removed.
+- at ITindex{font key}
++ at ITindex font key
  
-@@ -102,26 +102,26 @@ were removed.
- The variables
+ Fonts are used in this document to convey information.
  
- @t{char-font-limit}
-- at ICindex{char-font-limit}
-+ at ICindex char-font-limit
- ,
- @t{char-bits-limit}
-- at ICindex{char-bits-limit}
-+ at ICindex char-bits-limit
- ,
- @t{char-control-bit}
-- at ICindex{char-control-bit}
-+ at ICindex char-control-bit
- ,
- @t{char-meta-bit}
-- at ICindex{char-meta-bit}
-+ at ICindex char-meta-bit
- ,
- @t{char-super-bit}
-- at ICindex{char-super-bit}
-+ at ICindex char-super-bit
- ,
- @t{char-hyper-bit}
-- at ICindex{char-hyper-bit}
-+ at ICindex char-hyper-bit
- ,
+@@ -461,7 +461,7 @@ The subscript notation for Glossary term
+ context might be insufficient to disambiguate among the available definitions.
  
- and @t{*break-on-warnings*}
-- at ICindex{*break-on-warnings*}
-+ at ICindex *break-on-warnings*
+ @item @i{name}
+- at IGindex{name}
++ at IGindex name
  
- were removed.
+ Denotes the introduction of a formal term locally to the current text.
+ There is still a corresponding glossary entry, and is formally equivalent
+@@ -497,7 +497,7 @@ input or output.
+ @node Modified BNF Syntax, Splicing in Modified BNF Syntax, Font Key, Notational Conventions
+ @subsubsection Modified BNF Syntax
  
-@@ -135,13 +135,13 @@ The ``@t{#,}'' @i{reader macro} in @i{st
+- at ITindex{bnf key}
++ at ITindex bnf key
  
- The @i{packages} 
-      @t{LISP}
-- at IPindex{lisp}
-+ at IPindex lisp
- ,
-      @t{USER}
-- at IPindex{user}
-+ at IPindex user
- ,
-  and @t{SYSTEM}
-- at IPindex{system}
-+ at IPindex system
+ This specification uses an extended Backus Normal Form (BNF) to
+ describe the syntax of @r{Common Lisp} @i{macro forms} and @i{special forms}.
+@@ -813,7 +813,7 @@ but conventions may exist which convey a
+ @node Case in Symbols, Numbers (Objects with Multiple Notations), Objects with Multiple Notations, Notational Conventions
+ @subsubsection Case in Symbols
  
- are no longer required.  It is valid for @i{packages} with one or more of these
- names to be provided by a @i{conforming implementation} as extensions.
---- ./info/chap-4.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-4.texi	2013-05-13 10:11:19.757813220 -0600
-@@ -61,7 +61,7 @@ For more information, see @ref{Generic F
+- at ITindex{case in symbol names}
++ at ITindex case in symbol names
  
- The @i{class} of the @i{class} of an @i{object} 
- is called its @i{metaclass}
-- at IGindex{metaclass}
-+ at IGindex metaclass
- .
- For more information about @i{metaclasses},
- see @ref{Meta-Objects}.
-@@ -232,7 +232,7 @@ If a @i{type specifier} is a @i{list}, t
- is a @i{symbol}, and the rest of the @i{list} is subsidiary
- @i{type} information.  Such a @i{type specifier} is called 
- a @i{compound type specifier}
-- at IGindex{compound type specifier}
-+ at IGindex compound type specifier
- .
- Except as explicitly stated otherwise,
- the subsidiary items can be unspecified.
-@@ -324,7 +324,7 @@ Defining a structure by using @b{defstru
-  or class to be a new @i{type specifier} @i{symbol}.
- @item @t{*}  
- @b{deftype} can be used to define @i{derived type specifiers}
-- at IGindex{derived type specifier}
-+ at IGindex derived type specifier
- ,
-  which act as `abbreviations' for other @i{type specifiers}.
- @end table
-@@ -440,10 +440,10 @@ especially relevant to understanding the
- @subsection Introduction to Classes
+ While @i{case} is significant in the process of @i{interning} a @i{symbol},
+ the @i{Lisp reader}, by default, attempts to canonicalize the case of a
+@@ -872,11 +872,11 @@ and never to a four-letter symbol @t{"CA
+ @node NIL, Designators, Use of the Dot Character, Notational Conventions
+ @subsubsection NIL
  
- A @i{class}
-- at IGindex{class}
-+ at IGindex class
-  is an @i{object} that determines the structure and behavior 
- of a set of other @i{objects}, which are called its @i{instances}
-- at IGindex{instance}
-+ at IGindex instance
- .   
+- at IGindex{nil}
++ at IGindex nil
  
- A @i{class} can inherit structure and behavior from other @i{classes}.
-@@ -468,21 +468,21 @@ If C= @t{(find-class S)}, we say that C
+- at IGindex{()}
++ at IGindex ()
  
- A @i{class} C_1 is 
- a @i{direct superclass}
-- at IGindex{direct superclass}
-+ at IGindex direct superclass
-  of a @i{class} C_2
- if C_2 explicitly designates C_1 
- as a @i{superclass} in its definition.
- In this case C_2 is a @i{direct subclass}
-- at IGindex{direct subclass}
-+ at IGindex direct subclass
-  of C_1.
- A @i{class} C_n is a @i{superclass}
-- at IGindex{superclass}
-+ at IGindex superclass
-  of 
- a @i{class} C_1 if there exists a series of
- @i{classes} C_2,...,C_@{n-1@} such that 
- C_@{i+1@} is a @i{direct superclass} of C_i for 1 <= i<n.
- In this case, C_1 is a @i{subclass}
-- at IGindex{subclass}
-+ at IGindex subclass
-  of C_n.
- A @i{class} is considered neither a @i{superclass} nor a @i{subclass} of itself.
- That is, if C_1 is a @i{superclass} of C_2, 
-@@ -491,13 +491,13 @@ The set of @i{classes} consisting of som
- along with all of its @i{superclasses} is called ``C and its superclasses.''
+- at IRindex{nil}
++ at IRindex nil
  
- Each @i{class} has a @i{class precedence list}
-- at IGindex{class precedence list}
-+ at IGindex class precedence list
- ,
- which is a total ordering on the set of the given @i{class} and its @i{superclasses}.
- The total ordering is expressed as a list ordered from most specific to least specific.
- The @i{class precedence list} is used in several ways.  In general, more
- specific @i{classes} can @i{shadow}
-- at IGindex{shadow}
-+ at IGindex shadow
- _1 features that would
- otherwise be inherited from less specific @i{classes}.
- The @i{method} selection and combination process uses 
-@@ -507,7 +507,7 @@ from most specific to least specific.
- When a @i{class} is defined, the order in which its direct @i{superclasses}
- are mentioned in the defining form is important.  Each @i{class} has a
- @i{local precedence order}
-- at IGindex{local precedence order}
-+ at IGindex local precedence order
- , which is a @i{list} consisting of the
- @i{class} followed by its @i{direct superclasses} in the order mentioned
- in the defining @i{form}.
-@@ -541,7 +541,7 @@ systems is discussed in @ref{Integrating
- @i{instances} of @i{classes}. 
- The @i{class} of the @i{class} of an @i{object} is termed
- the @i{metaclass}
-- at IGindex{metaclass}
-+ at IGindex metaclass
-  of that @i{object}. When no misinterpretation is
- possible, the term @i{metaclass} is used to refer to a @i{class}
- that has @i{instances} that are themselves @i{classes}. The @i{metaclass}
-@@ -606,7 +606,7 @@ The list of the direct @i{superclasses}
+ @b{nil} has a variety of meanings.
+ It is a @i{symbol} in the @t{COMMON-LISP} @i{package} with the @i{name} @t{"NIL"},
+@@ -934,7 +934,7 @@ Instead, these phrases are just traditio
+ @subsubsection Designators
  
- @item @t{*}  
- A set of @i{slot specifiers}
-- at IGindex{slot specifier}
-+ at IGindex slot specifier
- .
-   Each @i{slot specifier} includes the @i{name} of the @i{slot} 
-   and zero or more @i{slot} options.  A @i{slot} option pertains 
-@@ -735,11 +735,11 @@ error of @i{type} @b{program-error} is s
- The @b{defclass} form for a @i{class} provides a total ordering
- on that @i{class} and its direct @i{superclasses}.  This ordering is
- called the @i{local precedence order}
-- at IGindex{local precedence order}
-+ at IGindex local precedence order
- .  It is an ordered list of the
- @i{class} and its direct @i{superclasses}. The
- @i{class precedence list}
-- at IGindex{class precedence list}
-+ at IGindex class precedence list
-  for a class C is a total ordering on
- C and its @i{superclasses} that is consistent with the
- @i{local precedence orders} for each of C and its @i{superclasses}.
-@@ -1518,7 +1518,7 @@ Other @i{functions} might also be of @i{
- @subsubheading  Description::
- 
- A @i{generic function}
-- at IGindex{generic function}
-+ at IGindex generic function
-  is a @i{function} whose behavior
- depends on the @i{classes} or identities of the @i{arguments}
- supplied to it.  A generic function object contains a set of
---- ./info/chap-13.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-13.texi	2013-05-13 10:11:19.758813215 -0600
-@@ -30,7 +30,7 @@
- @subsection Introduction to Characters
+ A @i{designator}
+- at IGindex{designator}
++ at IGindex designator
+  is an @i{object} that denotes another @i{object}.
  
- A @i{character}
-- at IGindex{character}
-+ at IGindex character
-  is an @i{object} that represents a unitary token 
- (@i{e.g.}, a letter, a special symbol, or a ``control character'')
- in an aggregate quantity of text
-@@ -112,7 +112,7 @@ Whether and how the @i{script} or @i{scr
- @subsubsection Character Repertoires
+ Where a @i{parameter} of an @i{operator} is described as a @i{designator},
+@@ -988,13 +988,13 @@ from which the @i{value} of <<@i{paramet
+ @node Nonsense Words,  , Designators, Notational Conventions
+ @subsubsection Nonsense Words
  
- A @i{repertoire}
-- at IGindex{repertoire}
-+ at IGindex repertoire
-  is a @i{type specifier} for a @i{subtype} of @i{type} @b{character}.
+- at ICindex{foo}
++ at ICindex foo
  
- This term is generally used when describing a collection of @i{characters}
-@@ -152,7 +152,7 @@ in some other, @i{implementation-defined
- For any @i{implementation-defined} @i{attribute}
- there is a distinguished value
- called the @i{null}
-- at IGindex{null}
-+ at IGindex null
-  value for that @i{attribute}. 
- A @i{character} for which each @i{implementation-defined} @i{attribute}
- has the null value for that @i{attribute} is called a @i{simple} @i{character}.
-@@ -198,7 +198,7 @@ which might have been enabled in the @i{
- @subsubsection Graphic Characters
+- at ICindex{bar}
++ at ICindex bar
  
- @i{Characters} that are classified as @i{graphic}
-- at IGindex{graphic}
-+ at IGindex graphic
- , or displayable, are each
- associated with a glyph, a visual representation of the @i{character}.
+- at ICindex{baz}
++ at ICindex baz
  
-@@ -212,7 +212,7 @@ Of the @i{standard characters},
-  and all others are @i{graphic}; see @ref{Standard Characters}.
+- at ICindex{quux}
++ at ICindex quux
  
- @i{Characters} that are not @i{graphic} are called @i{non-graphic}
-- at IGindex{non-graphic}
-+ at IGindex non-graphic
- .
+ When a word having no pre-attached semantics is required (@i{e.g.}, in an
+ example), it is common in the Lisp community to use one of the words
+@@ -1014,7 +1014,7 @@ is an attached semantics which they are
+ @node Error Terminology, Sections Not Formally Part Of This Standard, Notational Conventions, Definitions
+ @subsection Error Terminology
  
- @i{Non-graphic} @i{characters} are sometimes informally called
---- ./info/gcl-si.texi.orig	2013-05-11 07:35:20.000000000 -0600
-+++ ./info/gcl-si.texi	2013-05-13 10:11:19.758813215 -0600
-@@ -10,6 +10,7 @@
+- at IGindex{error terminology}
++ at IGindex error terminology
  
- @c @smallbook
- @setfilename gcl-si.info
-+ at settitle GCL SI Manual
- @synindex vr fn
+ Situations in which errors might, should, or must be signaled are described
+ in the standard.  The wording used to describe such situations is intended
+@@ -1024,7 +1024,7 @@ to have precise meaning. The following l
  
- @c to update the menus do: 
---- ./info/chap-11.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-11.texi	2013-05-13 10:11:19.759813211 -0600
-@@ -22,11 +22,11 @@
- @subsection Introduction to Packages
+ @item @b{Safe code}  
  
- A @i{package}
-- at IGindex{package}
-+ at IGindex package
-  establishes a mapping from names to @i{symbols}. 
- At any given time, one @i{package} is current.
- The @i{current package}
-- at IGindex{current package}
-+ at IGindex current package
-  is the one that is the @i{value} of @b{*package*}.
- When using the @i{Lisp reader},
- it is possible to refer to @i{symbols} in @i{packages} 
-@@ -99,14 +99,14 @@ specified by the caller.
- The mappings in a @i{package} are divided into two classes, external and internal.
- The @i{symbols} targeted by these different mappings 
- are called @i{external symbols} and @i{internal symbols}
-- at IGindex{internal symbol}
-+ at IGindex internal symbol
-  of the
- @i{package}. Within a @i{package}, a name refers to one
- @i{symbol} or to none; if it does refer
- to a @i{symbol}, then it is either external or internal in that
- @i{package}, but not both.
- @i{External symbols}
-- at IGindex{external symbol}
-+ at IGindex external symbol
+- at IGindex{safe}
++ at IGindex safe
  
- are part of the package's public interface to other @i{packages}.
- @i{Symbols} become @i{external symbols} of a given
-@@ -127,7 +127,7 @@ However, some of these mappings might be
- itself, while other mappings are inherited from other @i{packages} 
- via @b{use-package}.
- A @i{symbol} is said to be @i{present}
-- at IGindex{present}
-+ at IGindex present
-  in a @i{package} 
- if the mapping is in the @i{package} itself and is
- not inherited from somewhere else.
-@@ -143,7 +143,7 @@ to refer to an @i{internal symbol} using
- @subsubsection Accessibility of Symbols in a Package
+ This is @i{code} processed with the @b{safety} optimization 
+ at its highest setting (@t{3}).  @b{safety} is a lexical property
+@@ -1036,7 +1036,7 @@ code signals the error.
  
- A @i{symbol} becomes @i{accessible}
-- at IGindex{accessible}
-+ at IGindex accessible
-  in a @i{package} 
-     if that is its @i{home package} when it is created,
-  or if it is @i{imported} into that @i{package},
-@@ -246,7 +246,7 @@ never signal a name-conflict error.
- do not need to do any name-conflict checking.
- @b{unintern} does name-conflict checking only when a @i{symbol} 
- being @i{uninterned} is a @i{shadowing symbol}
-- at IGindex{shadowing symbol}
-+ at IGindex shadowing symbol
- .
+ @item @b{Unsafe code}  
  
- @item --  
-@@ -293,7 +293,7 @@ with the @i{same} @i{name} (under @b{str
- from two other @i{packages} can be resolved in
- favor of either @i{symbol} by importing it into the using
- @i{package} and making it a @i{shadowing symbol}
-- at IGindex{shadowing symbol}
-+ at IGindex shadowing symbol
- ,
- just as with @b{use-package}.
- @end table
-@@ -335,9 +335,9 @@ is given in Figure 11--2.
- @node The COMMON-LISP Package, Constraints on the COMMON-LISP Package for Conforming Implementations, Standardized Packages, Standardized Packages
- @subsubsection The COMMON-LISP Package
+- at IGindex{unsafe}
++ at IGindex unsafe
  
-- at IPindex{common-lisp}
-+ at IPindex common-lisp
+ This is code processed with lower safety levels.
  
-- at IPindex{cl}
-+ at IPindex cl
+@@ -1045,11 +1045,11 @@ treat all code as safe code all the time
  
- The @t{COMMON-LISP} @i{package} contains the primitives of the @r{Common Lisp} system as
- defined by this specification.  Its @i{external} @i{symbols} include
-@@ -397,7 +397,7 @@ or a @i{symbol} that is otherwise @i{acc
- @node Constraints on the COMMON-LISP Package for Conforming Programs, Some Exceptions to Constraints on the COMMON-LISP Package for Conforming Programs, Constraints on the COMMON-LISP Package for Conforming Implementations, Standardized Packages
- @subsubsection Constraints on the COMMON-LISP Package for Conforming Programs
+ @item @b{An error is signaled}  
  
-- at ITindex{redefinition}
-+ at ITindex redefinition
+- at IGindex{signal}
++ at IGindex signal
  
- Except where explicitly allowed, the consequences are undefined if any
- of the following actions are performed on an @i{external symbol} 
-@@ -542,9 +542,9 @@ and to declare the @b{ftype} of that @i{
- @node The COMMON-LISP-USER Package, The KEYWORD Package, Some Exceptions to Constraints on the COMMON-LISP Package for Conforming Programs, Standardized Packages
- @subsubsection The COMMON-LISP-USER Package
+- at ITindex{is signaled}
++ at ITindex is signaled
  
-- at IPindex{common-lisp-user}
-+ at IPindex common-lisp-user
+- at ITindex{must signal}
++ at ITindex must signal
  
-- at IPindex{cl-user}
-+ at IPindex cl-user
+ This means that an error is signaled in both safe and unsafe code.
+ @i{Conforming code} may rely on the fact that the error is signaled
+@@ -1062,9 +1062,9 @@ If an explicit error type is not specifi
  
- The @t{COMMON-LISP-USER} @i{package} is the @i{current package} when 
- a @r{Common Lisp} system starts up.  This @i{package} @i{uses} the @t{COMMON-LISP} @i{package}.
-@@ -556,7 +556,7 @@ it can @i{use} other @i{implementation-d
- @node The KEYWORD Package, Interning a Symbol in the KEYWORD Package, The COMMON-LISP-USER Package, Standardized Packages
- @subsubsection The KEYWORD Package
+ @item @b{An error should be signaled}  
  
-- at IPindex{keyword}
-+ at IPindex keyword
+- at IGindex{signal}
++ at IGindex signal
  
- The @t{KEYWORD} @i{package} contains @i{symbols}, called @i{keywords}_1,
- that are typically used as special markers in @i{programs} 
---- ./info/chap-15.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-15.texi	2013-05-13 10:11:19.760813206 -0600
-@@ -51,7 +51,7 @@ less than the corresponding @i{array} @i
- @subsubsection Array Dimensions
+- at ITindex{should signal}
++ at ITindex should signal
  
- An axis of an @i{array} is called a @i{dimension}
-- at IGindex{dimension}
-+ at IGindex dimension
- .
+ This means that an error is signaled in safe code, and an error
+ might be signaled in unsafe code.  @i{Conforming code} may rely on the
+@@ -1076,9 +1076,9 @@ if any argument is not of @i{type} @b{nu
  
- Each @i{dimension} is a non-negative 
-@@ -76,7 +76,7 @@ but there is a minimum requirement on th
+ @item @b{Should be prepared to signal an error}  
  
- An @i{array} can have any number of @i{dimensions} (including zero).
- The number of @i{dimensions} is called the @i{rank}
-- at IGindex{rank}
-+ at IGindex rank
- .
+- at IGindex{signal}
++ at IGindex signal
  
- If the rank of an @i{array} is zero then the @i{array} is said to have
-@@ -88,21 +88,21 @@ is then 1; a zero-rank @i{array} therefo
+- at ITindex{prepared to signal}
++ at ITindex prepared to signal
  
- An @i{array} of @i{rank} one (@i{i.e.}, a one-dimensional @i{array})
- is called a @i{vector}
-- at IGindex{vector}
-+ at IGindex vector
- .
+ This is similar to ``should be signaled'' except that it does not
+ imply that `extra effort' has to be taken on the part of an @i{operator}
+@@ -1128,9 +1128,9 @@ correct operation of the @i{operator}.
  
- @node Fill Pointers, Multidimensional Arrays, Vectors, Array Elements
- @subsubsection Fill Pointers
+ @item @b{The consequences are unspecified}  
  
- A @i{fill pointer}
-- at IGindex{fill pointer}
-+ at IGindex fill pointer
-  is a non-negative @i{integer} no
- larger than the total number of @i{elements} in a @i{vector}.
- Not all @i{vectors} have @i{fill pointers}.
- See the @i{functions} @b{make-array} and @b{adjust-array}.
+- at ITindex{consequences}
++ at ITindex consequences
  
- An @i{element} of a @i{vector} is said to be @i{active}
-- at IGindex{active}
-+ at IGindex active
-  if it has
- an index that is greater than or equal to zero, 
- but less than the @i{fill pointer} (if any).
-@@ -175,7 +175,7 @@ creation, @i{access}, and information op
- @subsubsection Array Upgrading
+- at ITindex{unspecified consequences}
++ at ITindex unspecified consequences
  
- The @i{upgraded array element type}
-- at IGindex{upgraded array element type}
-+ at IGindex upgraded array element type
-  of a @i{type} T_1
- is a @i{type} T_2 that is a @i{supertype} of T_1
- and that is used instead of T_1 whenever T_1
-@@ -185,11 +185,11 @@ for object creation or type discriminati
- During creation of an @i{array},
- the @i{element type} that was requested 
- is called the @i{expressed array element type}
-- at IGindex{expressed array element type}
-+ at IGindex expressed array element type
- .
- The @i{upgraded array element type} of the @i{expressed array element type}
- becomes the @i{actual array element type}
-- at IGindex{actual array element type}
-+ at IGindex actual array element type
-  of the @i{array} that is created.
+ This means that the consequences are unpredictable but harmless.
+ Implementations are permitted to specify the consequences of this
+@@ -1143,9 +1143,9 @@ specifies a name that does not correspon
  
- @i{Type} @i{upgrading} implies a movement upwards in the type hierarchy lattice.
-@@ -218,7 +218,7 @@ will @i{upgrade} a given @i{type}.
- @b{character} or a @i{subtype} of @b{character}
+ @item @b{The consequences are undefined}  
  
- are called @i{strings}
-- at IGindex{string}
-+ at IGindex string
- . 
- @i{Strings} are of @i{type} @b{string}.
- Figure 15--2 lists some @i{defined names} related to @i{strings}.
-@@ -250,7 +250,7 @@ see instead @ref{Strings}.
+- at ITindex{consequences}
++ at ITindex consequences
  
- @i{Vectors} whose @i{elements} are restricted to @i{type}
- @b{bit} are called @i{bit vectors}
-- at IGindex{bit vector}
-+ at IGindex bit vector
- .
- @i{Bit vectors} are of @i{type} @b{bit-vector}.
- Figure 15--3 lists some @i{defined names} for operations on @i{bit arrays}.
---- ./info/chap-25.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-25.texi	2013-05-13 10:11:19.761813201 -0600
-@@ -141,7 +141,7 @@ Figure 25--4 shows @i{defined names} rel
- @subsubsection Decoded Time
+- at ITindex{undefined consequences}
++ at ITindex undefined consequences
  
- A @i{decoded time}
-- at IGindex{decoded time}
-+ at IGindex decoded time
-  is an ordered series of nine values that, taken together,
- represent a point in calendar time (ignoring @i{leap seconds}):
+ This means that the consequences are unpredictable. The consequences
+ may range from harmless to fatal.  No @i{conforming code} may depend on
+@@ -1162,9 +1162,9 @@ variable has undefined consequences.''
  
-@@ -206,7 +206,7 @@ Figure 25--5 shows @i{defined names} rel
- @subsubsection Universal Time
+ @item @b{An error might be signaled}  
  
- @i{Universal time}
-- at IGindex{universal time}
-+ at IGindex universal time
-  is an @i{absolute} @i{time} represented as a
- single non-negative @i{integer}---the number of seconds since
- midnight, January 1, 1900 GMT (ignoring @i{leap seconds}).
-@@ -237,7 +237,7 @@ times before the base time of midnight,
- @subsubsection Internal Time
+- at IGindex{signal}
++ at IGindex signal
  
- @i{Internal time}
-- at IGindex{internal time}
-+ at IGindex internal time
-  represents time as a single @i{integer},
- in terms of an @i{implementation-dependent} unit called an @i{internal time unit}.
- Relative time is measured as a number of these units.
---- ./info/chap-24.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-24.texi	2013-05-13 10:11:19.762813196 -0600
-@@ -24,20 +24,20 @@
- To @b{load} a @i{file} is to treat its contents as @i{code}
- and @i{execute} that @i{code}.
- The @i{file} may contain @i{source code}
-- at IGindex{source code}
-+ at IGindex source code
-  or @i{compiled code}
-- at IGindex{compiled code}
-+ at IGindex compiled code
- .
+- at ITindex{might signal}
++ at ITindex might signal
  
- A @i{file} containing @i{source code} is called a @i{source file}
-- at IGindex{source file}
-+ at IGindex source file
- .
- @i{Loading} a @i{source file} is accomplished essentially 
- by sequentially @i{reading}_2 the @i{forms} in the file,
- @i{evaluating} each immediately after it is @i{read}.
+ This means that the situation has undefined consequences;
+ however, if an error is signaled, it is of the specified @i{type}.
+@@ -1172,7 +1172,7 @@ For example, ``@b{open} might signal an
  
- A @i{file} containing @i{compiled code} is called a @i{compiled file}
-- at IGindex{compiled file}
-+ at IGindex compiled file
- .
- @i{Loading} a @i{compiled file} is similar to @i{loading} a @i{source file},
- except that the @i{file} does not contain text but rather an
-@@ -53,7 +53,7 @@ is @i{implementation-dependent}.
- @subsection Features
+ @item @b{The return values are unspecified}  
  
- A @i{feature}
-- at IGindex{feature}
-+ at IGindex feature
-  is an aspect or attribute
-      of @r{Common Lisp}, 
-      of the @i{implementation},
-@@ -61,12 +61,12 @@ A @i{feature}
- A @i{feature} is identified by a @i{symbol}.
+- at ITindex{unspecified values}
++ at ITindex unspecified values
  
- A @i{feature} is said to be @i{present}
-- at IGindex{present}
-+ at IGindex present
-  in a @i{Lisp image}
- if and only if the @i{symbol} naming it is an @i{element} of the
- @i{list} held by the @i{variable} @b{*features*}, 
- which is called the @i{features list}
-- at IGindex{features list}
-+ at IGindex features list
- .
+ This means that only the number and nature of the return values of a
+ @i{form} are not specified.  However, the issue of whether or not
+@@ -1186,7 +1186,7 @@ rely on any particular aspect of the val
  
- @menu
-@@ -78,7 +78,7 @@ which is called the @i{features list}
- @subsubsection Feature Expressions
+ @item @b{Implementations may be extended to cover this situation}  
  
- Boolean combinations of @i{features}, called @i{feature expressions}
-- at IGindex{feature expression}
-+ at IGindex feature expression
- ,
- are used by the @t{#+} and @t{#-} @i{reader macros} in order to
- direct conditional @i{reading} of @i{expressions} by the @i{Lisp reader}.
---- ./info/chap-3.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-3.texi	2013-05-13 10:11:19.765813181 -0600
-@@ -24,7 +24,7 @@ from direct interpretation of a @i{form}
- to invocation of @i{compiled code} produced by a @i{compiler}.
+- at ITindex{extensions}
++ at ITindex extensions
  
- @i{Evaluation}
-- at IGindex{evaluation}
-+ at IGindex evaluation
-  is the process by which a @i{program} is @i{executed} in @r{Common Lisp}.
- The mechanism of @i{evaluation} is manifested
-  both implicitly through the effect of the @i{Lisp read-eval-print loop},
-@@ -59,19 +59,19 @@ is described in @ref{The Evaluation Mode
- @subsection Introduction to Environments
+ This means that the @i{situation} has undefined consequences;
+ however, a @i{conforming implementation} is free to treat
+@@ -1206,7 +1206,7 @@ specifiers to have a corresponding @i{cl
  
- A @i{binding}
-- at IGindex{binding}
-+ at IGindex binding
-  is an association between a @i{name} and
- that which the name denotes.  @i{Bindings} are @i{established}
- in a @i{lexical environment} or a @i{dynamic environment}
- by particular @i{special operators}.
+ @item @b{Implementations are free to extend the syntax}  
  
- An @i{environment}
-- at IGindex{environment}
-+ at IGindex environment
-  is a set of @i{bindings} and other information
- used during evaluation (@i{e.g.}, to associate meanings with names).
+- at ITindex{extensions}
++ at ITindex extensions
  
- @i{Bindings} in an @i{environment} are partitioned into @i{namespaces}
-- at IGindex{namespace}
-+ at IGindex namespace
- .
- A single @i{name} can simultaneously have more than one
- associated @i{binding} per @i{environment},
-@@ -89,7 +89,7 @@ but can have only one associated @i{bind
- @subsubsection The Global Environment
+ This means that in this situation implementations are permitted to
+ define unambiguous extensions to the syntax of the @i{form} being
+@@ -1219,7 +1219,7 @@ example, ``no implementation is free to
  
- The @i{global environment}
-- at IGindex{global environment}
-+ at IGindex global environment
-  is that part of an @i{environment}
- that contains @i{bindings} with both @i{indefinite scope} 
- and @i{indefinite extent}.
-@@ -115,7 +115,7 @@ information about @i{proclamations}.
- @subsubsection Dynamic Environments
+ @item @b{A warning might be issued}  
  
- A @i{dynamic environment}
-- at IGindex{dynamic environment}
-+ at IGindex dynamic environment
-  for @i{evaluation} is that part of an
- @i{environment} that contains @i{bindings} whose duration
- is bounded by points of @i{establishment} and @i{disestablishment} 
-@@ -151,7 +151,7 @@ associated with its name in the @i{globa
- @subsubsection Lexical Environments
+- at ITindex{warning}
++ at ITindex warning
  
- A @i{lexical environment}
-- at IGindex{lexical environment}
-+ at IGindex lexical environment
-  for @i{evaluation} at some position in a @i{program}
- is that part of the @i{environment} that contains information having 
- @i{lexical scope} within the @i{forms} containing that position.
-@@ -189,7 +189,7 @@ associated with its name in the @i{globa
- @subsubsection The Null Lexical Environment
+ This means that @i{implementations} are encouraged to issue a warning
+ if the context is appropriate (@i{e.g.}, when compiling).  However, a
+@@ -1799,7 +1799,7 @@ In addition, it imposes requirements on
+ @subsection Conforming Implementations
  
- The @i{null lexical environment}
-- at IGindex{null lexical environment}
-+ at IGindex null lexical environment
-  is equivalent to the @i{global environment}.
+ A @i{conforming implementation}
+- at IGindex{conforming implementation}
++ at IGindex conforming implementation
+  shall adhere to the requirements outlined
+ in this section.
  
- Although in general the representation of an @i{environment} @i{object}
-@@ -202,7 +202,7 @@ the @i{null lexical environment}.
+@@ -1906,9 +1906,9 @@ standard, then the conformance statement
+ @node Conforming Programs,  , Conforming Implementations, Conformance
+ @subsection Conforming Programs
  
- Some @i{operators} make use of an @i{object}, 
- called an @i{environment object}
-- at IGindex{environment object}
-+ at IGindex environment object
- ,
- that represents the set of @i{lexical bindings} needed to perform
- semantic analysis on a @i{form} in a given @i{lexical environment}.
-@@ -805,7 +805,7 @@ the same @i{name} N are textually nested
- within the inner @i{form} refer to the @i{binding} established by
- the inner @i{form}; the inner @i{binding} for N
- @i{shadows}
-- at IGindex{shadow}
+- at IGindex{conforming program}
++ at IGindex conforming program
+ 
+- at IGindex{conforming code}
++ at IGindex conforming code
+ 
+ Code conforming with the requirements of this standard shall adhere to the
+ following:
+@@ -1989,7 +1989,7 @@ presence of the feature @t{ACME} really
+ @t{acme:initialize-something} is present in the environment.  In effect,
+ using @t{#+} or @t{#-} in a @i{conforming program} means that the variable
+ @b{*features*}
+- at IRindex{*features*}
++ at IRindex *features*
+ 
+ becomes just one more piece of input data to that 
+ program.  Like any other data coming into a program, the programmer
+@@ -2177,7 +2177,7 @@ should be used if that is what is desire
+ 
+ The figures on the next twelve pages contain a complete enumeration
+ of the 978 @i{external} @i{symbols} in the @t{COMMON-LISP} @i{package}.
+- at IPindex{common-lisp}
++ at IPindex common-lisp
+ 
+ @format
+ @group
+--- ./info/chap-2.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-2.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -20,7 +20,7 @@ interprets them as a printed representat
+ constructs that @i{object}, and returns it.
+ 
+ The syntax described by this chapter is called the @i{standard syntax}
+- at IGindex{standard syntax}
++ at IGindex standard syntax
+ .
+ Operations are provided by @r{Common Lisp} so that
+ various aspects of the syntax information represented by a @i{readtable} 
+@@ -40,7 +40,7 @@ the syntax used throughout this document
+ 
+ Syntax information for use by the @i{Lisp reader} is embodied in an
+ @i{object} called a @i{readtable}
+- at IGindex{readtable}
++ at IGindex readtable
+ .  Among other things, 
+ the @i{readtable} contains the association between @i{characters} 
+ and @i{syntax types}.
+@@ -74,7 +74,7 @@ Figure 2--1 lists some @i{defined names}
+ 
+ Several @i{readtables} describing different syntaxes can exist,
+ but at any given time only one, called the @i{current readtable}
+- at IGindex{current readtable}
++ at IGindex current readtable
+ , 
+ affects the way in which @i{expressions}_2 are parsed 
+ into @i{objects} by the @i{Lisp reader}.
+@@ -87,7 +87,7 @@ To make a different @i{readtable} become
+ @subsubsection The Standard Readtable
+ 
+ The @i{standard readtable}
+- at IGindex{standard readtable}
++ at IGindex standard readtable
+  conforms to @i{standard syntax}.
+ The consequences are undefined if an attempt is made
+ to modify the @i{standard readtable}.
+@@ -100,7 +100,7 @@ The @i{readtable case} of the @i{standar
+ @subsubsection The Initial Readtable
+ 
+ The @i{initial readtable}
+- at IGindex{initial readtable}
++ at IGindex initial readtable
+  is
+ the @i{readtable} that is the @i{current readtable}
+ at the time when the @i{Lisp image} starts.
+@@ -135,7 +135,7 @@ the @i{variables} that influence the beh
+ All @i{implementations} must support a @i{character} @i{repertoire}
+ called @b{standard-char}; @i{characters} that are members of that
+ @i{repertoire} are called @i{standard characters}
+- at IGindex{standard character}
++ at IGindex standard character
+ .
+ 
+ The @b{standard-char} @i{repertoire} consists of
+@@ -261,7 +261,7 @@ for a more general user-written parser.
+ When the @i{Lisp reader} is invoked, it reads a single character from 
+ the @i{input} @i{stream} and dispatches according to the
+ @i{syntax type}
+- at IGindex{syntax type}
++ at IGindex syntax type
+  of that @i{character}.
+ Every @i{character} that can appear in the @i{input} @i{stream}
+ is of one of the @i{syntax types} shown in @i{Figure~2--6}.
+@@ -357,7 +357,7 @@ The following are descriptions of each k
+ 
+ @i{Constituent} @i{characters} are used in @i{tokens}.
+ A @i{token}
+- at IGindex{token}
++ at IGindex token
+  is a representation of a @i{number} or a @i{symbol}.  
+ Examples of @i{constituent} @i{characters} are letters and digits.
+ 
+@@ -473,7 +473,7 @@ is performed.
+ 
+ A @i{macro character} has an associated @i{function}
+ called a @i{reader macro function}
+- at IGindex{reader macro function}
++ at IGindex reader macro function
+  that implements its specialized parsing behavior.
+ An association of this kind can be established or modified under control of
+ a @i{conforming program} by using 
+@@ -494,7 +494,7 @@ A @i{macro character} is either @i{termi
+ The difference between @i{terminating} and @i{non-terminating} @i{macro characters} 
+ lies in what happens when such characters occur in the middle of a @i{token}.  
+ If a @i{non-terminating}
+- at IGindex{non-terminating}
++ at IGindex non-terminating
+  @i{macro character} occurs in the middle of a @i{token},
+ the @i{function} associated 
+ with the @i{non-terminating} @i{macro character} is not called,
+@@ -502,7 +502,7 @@ and the
+ @i{non-terminating} @i{macro character} does not terminate the @i{token}'s name; it
+ becomes part of the name as if the @i{macro character} were really a constituent
+ character.  A @i{terminating}
+- at IGindex{terminating}
++ at IGindex terminating
+  @i{macro character} terminates any @i{token},
+ and its associated @i{reader macro function}
+ is called no matter where the @i{character} appears.
+@@ -536,7 +536,7 @@ see @ref{Standard Macro Characters}.
+ @subsubsection Multiple Escape Characters
+ 
+ A pair of @i{multiple escape}
+- at IGindex{multiple escape}
++ at IGindex multiple escape
+  @i{characters}
+ is used to indicate that an enclosed sequence of characters,
+ including possible @i{macro characters} and @i{whitespace}_2 @i{characters},
+@@ -565,7 +565,7 @@ in @i{standard syntax}.
+ @subsubsection Single Escape Character
+ 
+ A @i{single escape}
+- at IGindex{single escape}
++ at IGindex single escape
+  is used to indicate that 
+ the next @i{character} is to be treated as 
+ an @i{alphabetic}_2 @i{character}
+--- ./info/chap-3.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-3.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -24,7 +24,7 @@ from direct interpretation of a @i{form}
+ to invocation of @i{compiled code} produced by a @i{compiler}.
+ 
+ @i{Evaluation}
+- at IGindex{evaluation}
++ at IGindex evaluation
+  is the process by which a @i{program} is @i{executed} in @r{Common Lisp}.
+ The mechanism of @i{evaluation} is manifested
+  both implicitly through the effect of the @i{Lisp read-eval-print loop},
+@@ -59,19 +59,19 @@ is described in @ref{The Evaluation Mode
+ @subsection Introduction to Environments
+ 
+ A @i{binding}
+- at IGindex{binding}
++ at IGindex binding
+  is an association between a @i{name} and
+ that which the name denotes.  @i{Bindings} are @i{established}
+ in a @i{lexical environment} or a @i{dynamic environment}
+ by particular @i{special operators}.
+ 
+ An @i{environment}
+- at IGindex{environment}
++ at IGindex environment
+  is a set of @i{bindings} and other information
+ used during evaluation (@i{e.g.}, to associate meanings with names).
+ 
+ @i{Bindings} in an @i{environment} are partitioned into @i{namespaces}
+- at IGindex{namespace}
++ at IGindex namespace
+ .
+ A single @i{name} can simultaneously have more than one
+ associated @i{binding} per @i{environment},
+@@ -89,7 +89,7 @@ but can have only one associated @i{bind
+ @subsubsection The Global Environment
+ 
+ The @i{global environment}
+- at IGindex{global environment}
++ at IGindex global environment
+  is that part of an @i{environment}
+ that contains @i{bindings} with both @i{indefinite scope} 
+ and @i{indefinite extent}.
+@@ -115,7 +115,7 @@ information about @i{proclamations}.
+ @subsubsection Dynamic Environments
+ 
+ A @i{dynamic environment}
+- at IGindex{dynamic environment}
++ at IGindex dynamic environment
+  for @i{evaluation} is that part of an
+ @i{environment} that contains @i{bindings} whose duration
+ is bounded by points of @i{establishment} and @i{disestablishment} 
+@@ -151,7 +151,7 @@ associated with its name in the @i{globa
+ @subsubsection Lexical Environments
+ 
+ A @i{lexical environment}
+- at IGindex{lexical environment}
++ at IGindex lexical environment
+  for @i{evaluation} at some position in a @i{program}
+ is that part of the @i{environment} that contains information having 
+ @i{lexical scope} within the @i{forms} containing that position.
+@@ -189,7 +189,7 @@ associated with its name in the @i{globa
+ @subsubsection The Null Lexical Environment
+ 
+ The @i{null lexical environment}
+- at IGindex{null lexical environment}
++ at IGindex null lexical environment
+  is equivalent to the @i{global environment}.
+ 
+ Although in general the representation of an @i{environment} @i{object}
+@@ -202,7 +202,7 @@ the @i{null lexical environment}.
+ 
+ Some @i{operators} make use of an @i{object}, 
+ called an @i{environment object}
+- at IGindex{environment object}
++ at IGindex environment object
+ ,
+ that represents the set of @i{lexical bindings} needed to perform
+ semantic analysis on a @i{form} in a given @i{lexical environment}.
+@@ -805,7 +805,7 @@ the same @i{name} N are textually nested
+ within the inner @i{form} refer to the @i{binding} established by
+ the inner @i{form}; the inner @i{binding} for N
+ @i{shadows}
+- at IGindex{shadow}
 + at IGindex shadow
   the outer @i{binding} for N.  Outside the inner
  @i{form} but inside the outer one, references to N refer to the
@@ -1224,1000 +1038,1067 @@
  
  @subsubheading  Arguments::
  
---- ./info/gcl-tk.texi.orig	2013-05-11 07:35:21.000000000 -0600
-+++ ./info/gcl-tk.texi	2013-05-31 16:03:43.187080653 -0600
-@@ -10,6 +10,7 @@
- 
- @c @smallbook
- @setfilename gcl-tk.info
-+ at settitle GCL TK Manual
- @synindex vr fn
- 
- @c to update the menus do: 
---- ./info/chap-23.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-23.texi	2013-05-13 10:11:19.766813176 -0600
-@@ -1174,7 +1174,7 @@ Controls the interpretation of tokens by
- @i{integers} or @i{ratios}.  
- 
- The @i{value} of @b{*read-base*}, called the @i{current input base}
-- at IGindex{current input base}
-+ at IGindex current input base
- ,
- is the radix in which @i{integers} and
- @i{ratios} are to be read by the @i{Lisp reader}.
---- ./info/chap-19.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-19.texi	2013-05-13 10:11:19.767813172 -0600
-@@ -37,7 +37,7 @@ as @i{namestrings} and as @i{pathnames}.
- @subsection Namestrings as Filenames
- 
- A @i{namestring}
-- at IGindex{namestring}
-+ at IGindex namestring
-  is a @i{string} that represents a @i{filename}.
+--- ./info/chap-4.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-4.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -61,7 +61,7 @@ For more information, see @ref{Generic F
  
- In general, the syntax of @i{namestrings} involves the use of 
-@@ -62,7 +62,7 @@ or @b{parse-namestring}.
- @subsection Pathnames as Filenames
- 
- @i{Pathnames}
-- at IGindex{pathname}
-+ at IGindex pathname
-  are structured @i{objects} that can represent,
- in an @i{implementation-independent} way,
- the @i{filenames} that are used natively by an underlying @i{file system}.
-@@ -317,7 +317,7 @@ relating to @i{pathnames} that permit a
- 
- For the functions in @i{Figure~19--2},
- a value of @t{:local}
-- at c @IKindex{local}
-+ at c @IKindex local
-  for the @t{:case} argument 
- (the default for these functions)
- indicates that the functions should receive and yield @i{strings} in component values
-@@ -334,7 +334,7 @@ the @i{strings} will be translated to th
- 
- For the functions in @i{Figure~19--2},
- a value of @t{:common}
-- at c @IKindex{common}
-+ at c @IKindex common
-  for the @t{:case} argument 
- that these @i{functions} should receive 
- and yield @i{strings} in component values according to the following conventions:
-@@ -372,7 +372,7 @@ rather than an actual @b{nil} in some @i
- @subsubsection :WILD as a Component Value
- 
- If @t{:wild}
-- at c @IKindex{wild}
-+ at c @IKindex wild
-  is the value of a @i{pathname} component,
- that component is considered to be a wildcard, which matches anything.
- 
-@@ -391,13 +391,13 @@ of a @i{pathname}, the effect is equival
- @t{(:absolute :wild-inferiors)},
- or the same as @t{(:absolute :wild)} in a @i{file system} that does not support
- @t{:wild-inferiors}.
-- at c @IKindex{wild-inferiors}
-+ at c @IKindex wild-inferiors
- 
- @node ->UNSPECIFIC as a Component Value, Relation between component values NIL and ->UNSPECIFIC, ->WILD as a Component Value, Interpreting Pathname Component Values
- @subsubsection :UNSPECIFIC as a Component Value
- 
- If @t{:unspecific}
-- at c @IKindex{unspecific}
-+ at c @IKindex unspecific
-  is the value of a @i{pathname} component,
- the component is considered to be ``absent'' 
- or to ``have no meaning''
-@@ -511,10 +511,10 @@ The directory might be a @i{string},
- The directory can be a @i{list} of @i{strings} and @i{symbols}. 
- 
- The @i{car} of the @i{list} is one of the symbols @t{:absolute}
-- at c @IKindex{absolute}
-+ at c @IKindex absolute
-  or 
- @t{:relative}
-- at c @IKindex{relative}
-+ at c @IKindex relative
- , meaning:
- 
- @table @asis
-@@ -554,13 +554,13 @@ to a file system for which it does not m
- signals an error of @i{type} @b{file-error}.
- For example, Unix does not support @t{:wild-inferiors} in most implementations.
- 
-- at c @IKindex{wild}
-+ at c @IKindex wild
- 
-- at c @IKindex{wild-inferiors}
-+ at c @IKindex wild-inferiors
- 
-- at c @IKindex{up}
-+ at c @IKindex up
- 
-- at c @IKindex{back}
-+ at c @IKindex back
- 
- @format
- @group
---- ./info/chap-17.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-17.texi	2013-05-13 10:11:19.767813172 -0600
-@@ -15,7 +15,7 @@
- @c including concept-sequences
- 
- A @i{sequence}
-- at IGindex{sequence}
-+ at IGindex sequence
-  is an ordered collection of @i{elements},
- implemented as either a @i{vector} or a @i{list}.
- 
-@@ -25,7 +25,7 @@ of @i{types} that are @i{subtypes} of @b
- (@i{e.g.}, @b{list}, @b{make-list}, @b{mapcar}, and @b{vector}).
- 
- A @i{sequence function}
-- at IGindex{sequence function}
-+ at IGindex sequence function
-  is a @i{function} 
-    defined by this specification
- or added as an extension by the @i{implementation} 
-@@ -131,7 +131,7 @@ is a @i{designator} for a  @i{function}
- of two @i{arguments}, O and Z_i.
- An E_i is said (or, sometimes, an O and an E_i are said)
- to @i{satisfy the test}
-- at IGindex{satisfy the test}
-+ at IGindex satisfy the test
+ The @i{class} of the @i{class} of an @i{object} 
+ is called its @i{metaclass}
+- at IGindex{metaclass}
++ at IGindex metaclass
+ .
+ For more information about @i{metaclasses},
+ see @ref{Meta-Objects}.
+@@ -232,7 +232,7 @@ If a @i{type specifier} is a @i{list}, t
+ is a @i{symbol}, and the rest of the @i{list} is subsidiary
+ @i{type} information.  Such a @i{type specifier} is called 
+ a @i{compound type specifier}
+- at IGindex{compound type specifier}
++ at IGindex compound type specifier
+ .
+ Except as explicitly stated otherwise,
+ the subsidiary items can be unspecified.
+@@ -324,7 +324,7 @@ Defining a structure by using @b{defstru
+  or class to be a new @i{type specifier} @i{symbol}.
+ @item @t{*}  
+ @b{deftype} can be used to define @i{derived type specifiers}
+- at IGindex{derived type specifier}
++ at IGindex derived type specifier
+ ,
+  which act as `abbreviations' for other @i{type specifiers}.
+ @end table
+@@ -440,10 +440,10 @@ especially relevant to understanding the
+ @subsection Introduction to Classes
  
- if this @t{:test} @i{function} returns a @i{generalized boolean} representing 
- @i{true}.
-@@ -141,7 +141,7 @@ is @i{designator} for a @i{function}
- of two @i{arguments}, O and Z_i.
- An E_i is said (or, sometimes, an O and an E_i are said)
- to @i{satisfy the test}
-- at IGindex{satisfy the test}
-+ at IGindex satisfy the test
+ A @i{class}
+- at IGindex{class}
++ at IGindex class
+  is an @i{object} that determines the structure and behavior 
+ of a set of other @i{objects}, which are called its @i{instances}
+- at IGindex{instance}
++ at IGindex instance
+ .   
  
- if this @t{:test-not} @i{function}
- returns a @i{generalized boolean} representing @i{false}.
-@@ -226,7 +226,7 @@ and @i{yielding} an @i{object} Z_i to be
- ends in ``@t{-if}'' accept a first @i{argument} that is a @i{designator} for a 
- @i{function} of one @i{argument}, Z_i.
- An E_i is said to @i{satisfy the test}
-- at IGindex{satisfy the test}
-+ at IGindex satisfy the test
-  if this @t{:test} @i{function}
- returns a @i{generalized boolean} representing @i{true}.
+ A @i{class} can inherit structure and behavior from other @i{classes}.
+@@ -468,21 +468,21 @@ If C= @t{(find-class S)}, we say that C
  
-@@ -234,7 +234,7 @@ returns a @i{generalized boolean} repres
- ends in ``@t{-if-not}'' accept a first @i{argument} that is a @i{designator} for a 
- @i{function} of one @i{argument}, Z_i.
- An E_i is said to @i{satisfy the test}
-- at IGindex{satisfy the test}
-+ at IGindex satisfy the test
-  if this @t{:test} @i{function}
- returns a @i{generalized boolean} representing @i{false}.
+ A @i{class} C_1 is 
+ a @i{direct superclass}
+- at IGindex{direct superclass}
++ at IGindex direct superclass
+  of a @i{class} C_2
+ if C_2 explicitly designates C_1 
+ as a @i{superclass} in its definition.
+ In this case C_2 is a @i{direct subclass}
+- at IGindex{direct subclass}
++ at IGindex direct subclass
+  of C_1.
+ A @i{class} C_n is a @i{superclass}
+- at IGindex{superclass}
++ at IGindex superclass
+  of 
+ a @i{class} C_1 if there exists a series of
+ @i{classes} C_2,...,C_@{n-1@} such that 
+ C_@{i+1@} is a @i{direct superclass} of C_i for 1 <= i<n.
+ In this case, C_1 is a @i{subclass}
+- at IGindex{subclass}
++ at IGindex subclass
+  of C_n.
+ A @i{class} is considered neither a @i{superclass} nor a @i{subclass} of itself.
+ That is, if C_1 is a @i{superclass} of C_2, 
+@@ -491,13 +491,13 @@ The set of @i{classes} consisting of som
+ along with all of its @i{superclasses} is called ``C and its superclasses.''
  
---- ./info/chap-9.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-9.texi	2013-05-13 10:11:19.768813167 -0600
-@@ -212,7 +212,7 @@ implicitly.  Macros such as @b{ccase}, @
+ Each @i{class} has a @i{class precedence list}
+- at IGindex{class precedence list}
++ at IGindex class precedence list
+ ,
+ which is a total ordering on the set of the given @i{class} and its @i{superclasses}.
+ The total ordering is expressed as a list ordered from most specific to least specific.
+ The @i{class precedence list} is used in several ways.  In general, more
+ specific @i{classes} can @i{shadow}
+- at IGindex{shadow}
++ at IGindex shadow
+ _1 features that would
+ otherwise be inherited from less specific @i{classes}.
+ The @i{method} selection and combination process uses 
+@@ -507,7 +507,7 @@ from most specific to least specific.
+ When a @i{class} is defined, the order in which its direct @i{superclasses}
+ are mentioned in the defining form is important.  Each @i{class} has a
+ @i{local precedence order}
+- at IGindex{local precedence order}
++ at IGindex local precedence order
+ , which is a @i{list} consisting of the
+ @i{class} followed by its @i{direct superclasses} in the order mentioned
+ in the defining @i{form}.
+@@ -541,7 +541,7 @@ systems is discussed in @ref{Integrating
+ @i{instances} of @i{classes}. 
+ The @i{class} of the @i{class} of an @i{object} is termed
+ the @i{metaclass}
+- at IGindex{metaclass}
++ at IGindex metaclass
+  of that @i{object}. When no misinterpretation is
+ possible, the term @i{metaclass} is used to refer to a @i{class}
+ that has @i{instances} that are themselves @i{classes}. The @i{metaclass}
+@@ -606,7 +606,7 @@ The list of the direct @i{superclasses}
  
- A number of the functions in the condition system take arguments which
- are identified as @i{condition designators}
-- at IGindex{condition designator}
-+ at IGindex condition designator
+ @item @t{*}  
+ A set of @i{slot specifiers}
+- at IGindex{slot specifier}
++ at IGindex slot specifier
  .
- By convention, those arguments are notated as
+   Each @i{slot specifier} includes the @i{name} of the @i{slot} 
+   and zero or more @i{slot} options.  A @i{slot} option pertains 
+@@ -735,11 +735,11 @@ error of @i{type} @b{program-error} is s
+ The @b{defclass} form for a @i{class} provides a total ordering
+ on that @i{class} and its direct @i{superclasses}.  This ordering is
+ called the @i{local precedence order}
+- at IGindex{local precedence order}
++ at IGindex local precedence order
+ .  It is an ordered list of the
+ @i{class} and its direct @i{superclasses}. The
+ @i{class precedence list}
+- at IGindex{class precedence list}
++ at IGindex class precedence list
+  for a class C is a total ordering on
+ C and its @i{superclasses} that is consistent with the
+ @i{local precedence orders} for each of C and its @i{superclasses}.
+@@ -1518,7 +1518,7 @@ Other @i{functions} might also be of @i{
+ @subsubheading  Description::
  
-@@ -275,10 +275,10 @@ If the @t{:report} argument to @b{define
- a print function is defined that is called whenever 
- the defined @i{condition} is printed while the @i{value} of @b{*print-escape*} is @i{false}. 
- This function is called the @i{condition reporter}
-- at IGindex{condition reporter}
-+ at IGindex condition reporter
- ;
- the text which it outputs is called a @i{report message}
-- at IGindex{report message}
-+ at IGindex report message
- .
+ A @i{generic function}
+- at IGindex{generic function}
++ at IGindex generic function
+  is a @i{function} whose behavior
+ depends on the @i{classes} or identities of the @i{arguments}
+ supplied to it.  A generic function object contains a set of
+--- ./info/chap-5.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-5.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -24,10 +24,10 @@
+ @subsection Overview of Places and Generalized Reference
  
- When a @i{condition} is printed and @b{*print-escape*}
-@@ -1095,9 +1095,9 @@ actually fixing the problem).
+ A @i{generalized reference}
+- at IGindex{generalized reference}
++ at IGindex generalized reference
+  is the use of a @i{form},
+ sometimes called a @i{place}
+- at IGindex{place}
++ at IGindex place
+ ,
+ as if it were a @i{variable} that could be read and written.
+ The @i{value} of a @i{place} is 
+@@ -115,9 +115,9 @@ For all @i{places} defined by this speci
+ (@i{e.g.}, @b{getf}, @b{ldb}, ...),
+ this order of evaluation is left-to-right.
  
- The order of evaluation of the @i{places} is not specified;
- see @ref{Evaluation of Subforms to Places}.
 - at ITindex{order of evaluation}
 + at ITindex order of evaluation
  
 - at ITindex{evaluation order}
 + at ITindex evaluation order
  
- If a @i{place} @i{form} is supplied that produces more values than there
- are store variables, the extra values are ignored. If the supplied 
-@@ -3576,7 +3576,7 @@ signaled.
-  (defun read-new-value ()
-    (format t "Enter a new value: ")
-    (multiple-value-list (eval (read))))
-- at result{}  READ-NEW-VALUE at page
-+ at result{}  READ-NEW-VALUE\@page
-  (defun verify-or-fix-perfect-sundae (ice-cream sauce topping)
-    (do ()
-       ((all-start-with-same-letter ice-cream sauce topping))
-@@ -4061,15 +4061,15 @@ where the handler may wish to supply a r
- @node abort (Function), , use-value, Conditions Dictionary
- @subsection abort, continue, muffle-warning, store-value, use-value          [Function]
+ When a @i{place} is derived from a macro expansion,
+ this rule is applied after the macro is expanded to find the appropriate @i{place}. 
+@@ -186,9 +186,9 @@ or none of the cases hold in
+ @item 4.  
+ For @b{assert}, the order of evaluation of the generalized 
+ references is not specified.
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
-- at IRindex{abort}
-+ at IRindex abort
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
-- at IRindex{continue}
-+ at IRindex continue
+ @end table
  
-- at IRindex{muffle-warning}
-+ at IRindex muffle-warning
+@@ -2568,10 +2568,11 @@ The @i{primary value} of each @i{form} i
  
-- at IRindex{store-value}
-+ at IRindex store-value
+ @w{@i{pair} ::=var form}
  
-- at IRindex{use-value}
-+ at IRindex use-value
++ at iftex
+ @subsubheading  Pronunciation::
  
- @code{abort}  @i{@r{&optional} condition} 
-        @result{}  #<NoValue>
---- ./info/chap-1.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-1.texi	2013-05-13 10:11:19.769813162 -0600
-@@ -419,7 +419,7 @@ used in this manual.
- @node Notational Conventions, Error Terminology, Definitions, Definitions
- @subsection Notational Conventions
+- at b{psetq}: pronounced  @tex p\=e'set ,ky\"u 
+- at end tex
++ at b{psetq}: pronounced p\=e'set ,ky\"u 
++ at end iftex
  
-- at ITindex{notation}
-+ at ITindex notation
+ @subsubheading  Arguments and Values::
  
- The following notational conventions are used throughout this document.
+@@ -2724,9 +2725,9 @@ to which a @b{throw} is transferring con
+ @t{(throw 'bar @i{form})}.
  
-@@ -442,7 +442,7 @@ The following notational conventions are
- @node Font Key, Modified BNF Syntax, Notational Conventions, Notational Conventions
- @subsubsection Font Key
+ The order of execution of @b{catch} follows:
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
-- at ITindex{font key}
-+ at ITindex font key
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
- Fonts are used in this document to convey information.
+ @table @asis
  
-@@ -461,7 +461,7 @@ The subscript notation for Glossary term
- context might be insufficient to disambiguate among the available definitions.
+@@ -4559,9 +4560,9 @@ and the @b{unless} @i{form} returns @b{n
  
- @item @i{name}
-- at IGindex{name}
-+ at IGindex name
+ @w{@i{clause} ::=normal-clause | otherwise-clause}
  
- Denotes the introduction of a formal term locally to the current text.
- There is still a corresponding glossary entry, and is formally equivalent
-@@ -497,7 +497,7 @@ input or output.
- @node Modified BNF Syntax, Splicing in Modified BNF Syntax, Font Key, Notational Conventions
- @subsubsection Modified BNF Syntax
+- at IRindex{otherwise}
++ at IRindex otherwise
  
-- at ITindex{bnf key}
-+ at ITindex bnf key
+- at IRindex{t}
++ at IRindex t
  
- This specification uses an extended Backus Normal Form (BNF) to
- describe the syntax of @r{Common Lisp} @i{macro forms} and @i{special forms}.
-@@ -813,7 +813,7 @@ but conventions may exist which convey a
- @node Case in Symbols, Numbers (Objects with Multiple Notations), Objects with Multiple Notations, Notational Conventions
- @subsubsection Case in Symbols
+ @subsubheading  Arguments and Values::
  
-- at ITindex{case in symbol names}
-+ at ITindex case in symbol names
+@@ -4732,9 +4733,9 @@ message.
  
- While @i{case} is significant in the process of @i{interning} a @i{symbol},
- the @i{Lisp reader}, by default, attempts to canonicalize the case of a
-@@ -872,11 +872,11 @@ and never to a four-letter symbol @t{"CA
- @node NIL, Designators, Use of the Dot Character, Notational Conventions
- @subsubsection NIL
+ @w{@i{clause} ::=normal-clause | otherwise-clause}
  
-- at IGindex{nil}
-+ at IGindex nil
+- at IRindex{otherwise}
++ at IRindex otherwise
  
-- at IGindex{()}
-+ at IGindex ()
+- at IRindex{t}
++ at IRindex t
  
-- at IRindex{nil}
-+ at IRindex nil
+ @subsubheading  Arguments and Values::
  
- @b{nil} has a variety of meanings.
- It is a @i{symbol} in the @t{COMMON-LISP} @i{package} with the @i{name} @t{"NIL"},
-@@ -934,7 +934,7 @@ Instead, these phrases are just traditio
- @subsubsection Designators
+@@ -5123,9 +5124,9 @@ is defined to always behave in the same
  
- A @i{designator}
-- at IGindex{designator}
-+ at IGindex designator
-  is an @i{object} that denotes another @i{object}.
+ in order that the rules for order of evaluation and side-effects be consistent
+ with those used by @b{setf}.
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
- Where a @i{parameter} of an @i{operator} is described as a @i{designator},
-@@ -988,13 +988,13 @@ from which the @i{value} of <<@i{paramet
- @node Nonsense Words,  , Designators, Notational Conventions
- @subsubsection Nonsense Words
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
-- at ICindex{foo}
-+ at ICindex foo
+ See @ref{VALUES Forms as Places}.
  
-- at ICindex{bar}
-+ at ICindex bar
+--- ./info/chap-6.texi.orig	2003-11-24 09:31:36.000000000 -0700
++++ ./info/chap-6.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -373,9 +373,9 @@ For more information, see @ref{Miscellan
+ @node Order of Execution, Destructuring, Summary of Miscellaneous Clauses, Overview of the Loop Facility
+ @subsubsection Order of Execution
  
-- at ICindex{baz}
-+ at ICindex baz
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
-- at ICindex{quux}
-+ at ICindex quux
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
- When a word having no pre-attached semantics is required (@i{e.g.}, in an
- example), it is common in the Lisp community to use one of the words
-@@ -1014,7 +1014,7 @@ is an attached semantics which they are
- @node Error Terminology, Sections Not Formally Part Of This Standard, Notational Conventions, Definitions
- @subsection Error Terminology
+   With the exceptions listed below, clauses are executed in the loop body
+   in the order in which they appear in the source.  Execution is repeated 
+@@ -688,9 +688,9 @@ For example, either ``@t{from x by y}''
+ However, because left-to-right order of evaluation is preserved,
+ the effects will be different in the case of side effects.
  
-- at IGindex{error terminology}
-+ at IGindex error terminology
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
- Situations in which errors might, should, or must be signaled are described
- in the standard.  The wording used to describe such situations is intended
-@@ -1024,7 +1024,7 @@ to have precise meaning. The following l
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
- @item @b{Safe code}  
+ Consider:
  
-- at IGindex{safe}
-+ at IGindex safe
+--- ./info/chap-7.texi.orig	2003-12-30 09:50:01.000000000 -0700
++++ ./info/chap-7.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -22,7 +22,7 @@ The @i{generic function} @b{make-instanc
+ @i{instance} of a @i{class}.  The first argument is a @i{class} or
+ the @i{name} of a @i{class}, and the remaining arguments form an 
+ @i{initialization argument list}
+- at IGindex{initialization argument list}
++ at IGindex initialization argument list
+ .
  
- This is @i{code} processed with the @b{safety} optimization 
- at its highest setting (@t{3}).  @b{safety} is a lexical property
-@@ -1036,7 +1036,7 @@ code signals the error.
+ The initialization of a new @i{instance} consists of several distinct
+@@ -295,9 +295,9 @@ used to initialize a @i{slot} only if no
+ associated with that @i{slot} is given as an argument to 
+ @b{make-instance} or is defaulted by @t{:default-initargs}.
  
- @item @b{Unsafe code}  
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
-- at IGindex{unsafe}
-+ at IGindex unsafe
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
- This is code processed with lower safety levels.
+ The order of evaluation of default value @i{forms} for initialization
+ arguments and the order of evaluation of @t{:initform} forms are
+@@ -386,7 +386,6 @@ The following is an example of the above
+    (:default-initargs a 1 b 2))
+ @end example
  
-@@ -1045,11 +1045,11 @@ treat all code as safe code all the time
+- at center 
+ @example
+ @format
+ @group
+@@ -1075,7 +1074,7 @@ the @i{method} @i{accesses} the @i{local
+ @subsection Introduction to Generic Functions
  
- @item @b{An error is signaled}  
+ A @i{generic function}
+- at IGindex{generic function}
++ at IGindex generic function
+  is a function whose behavior depends on
+ the @i{classes} or identities of the @i{arguments} supplied to it.
+ A @i{generic function} @i{object} 
+@@ -1153,7 +1152,7 @@ The only @i{standardized} @i{operator} i
+ Some @i{operators} define @i{methods} for a @i{generic function}.
+ These @i{operators} will be referred to as
+ @i{method-defining operators}
+- at IGindex{method-defining operator}
++ at IGindex method-defining operator
+ ;
+ their associated @i{forms} are called @i{method-defining forms}.
+ The @i{standardized} @i{method-defining operators} are listed in Figure 7--2.
+@@ -1235,7 +1234,7 @@ an error is signaled.  If a @i{method-de
+ a @i{lambda list} for that @i{generic function} is derived from the
+ @i{lambda list} of the @i{method} in the @i{method-defining form} in such a way
+ as to be @i{congruent} with it.  For a discussion of @i{congruence}
+- at IGindex{congruence}
++ at IGindex congruence
+ ,
+ see @ref{Congruent Lambda-lists for all Methods of a Generic Function}.
  
-- at IGindex{signal}
-+ at IGindex signal
+@@ -1292,7 +1291,7 @@ selection to determine whether an argume
  
-- at ITindex{is signaled}
-+ at ITindex is signaled
+ A method all of whose @i{parameter specializers} are 
+ the @i{class} @b{t} is called a @i{default method}
+- at IGindex{default method}
++ at IGindex default method
+ ; it is always applicable but
+ may be shadowed by a more specific method.
  
-- at ITindex{must signal}
-+ at ITindex must signal
+@@ -1475,7 +1474,7 @@ both @t{picture-class} and @t{character-
+ When a @i{generic function} is called with particular arguments, it must
+ determine the code to execute.  This code is called the 
+ @i{effective method}
+- at IGindex{effective method}
++ at IGindex effective method
+  for those @i{arguments}.
+ The @i{effective method} is a 
+ combination of the @i{applicable methods} in the @i{generic function}
+@@ -1573,7 +1572,7 @@ That method can call the next most speci
+ method by using the @i{function} @b{call-next-method}.  The method that
+ @b{call-next-method} will call is referred to as the 
+ @i{next method}
+- at IGindex{next method}
++ at IGindex next method
+ .  The predicate @b{next-method-p} tests whether a next
+ method exists.  If @b{call-next-method} is called and there is no
+ next most specific method, the generic function @b{no-next-method}
+@@ -1608,7 +1607,7 @@ the @b{define-method-combination} @i{mac
+ @node Standard Method Combination, Declarative Method Combination, Applying method combination to the sorted list of applicable methods, Method Selection and Combination
+ @subsubsection Standard Method Combination
  
- This means that an error is signaled in both safe and unsafe code.
- @i{Conforming code} may rely on the fact that the error is signaled
-@@ -1062,9 +1062,9 @@ If an explicit error type is not specifi
+- at IRindex{standard}
++ at IRindex standard
  
- @item @b{An error should be signaled}  
+ Standard method combination is supported by the @i{class} @b{standard-generic-function}.
+ It is used if no other type of method
+@@ -1757,25 +1756,25 @@ other operators that specify generic fun
  
-- at IGindex{signal}
-+ at IGindex signal
+ The names of the built-in  method combination types are listed in Figure 7--3.
  
-- at ITindex{should signal}
-+ at ITindex should signal
+- at IRindex{+}
++ at IRindex +
  
- This means that an error is signaled in safe code, and an error
- might be signaled in unsafe code.  @i{Conforming code} may rely on the
-@@ -1076,9 +1076,9 @@ if any argument is not of @i{type} @b{nu
+- at IRindex{and}
++ at IRindex and
  
- @item @b{Should be prepared to signal an error}  
+- at IRindex{append}
++ at IRindex append
  
-- at IGindex{signal}
-+ at IGindex signal
+- at IRindex{list}
++ at IRindex list
  
-- at ITindex{prepared to signal}
-+ at ITindex prepared to signal
+- at IRindex{max}
++ at IRindex max
  
- This is similar to ``should be signaled'' except that it does not
- imply that `extra effort' has to be taken on the part of an @i{operator}
-@@ -1128,9 +1128,9 @@ correct operation of the @i{operator}.
+- at IRindex{min}
++ at IRindex min
  
- @item @b{The consequences are unspecified}  
+- at IRindex{nconc}
++ at IRindex nconc
  
-- at ITindex{consequences}
-+ at ITindex consequences
+- at IRindex{or}
++ at IRindex or
  
-- at ITindex{unspecified consequences}
-+ at ITindex unspecified consequences
+- at IRindex{progn}
++ at IRindex progn
  
- This means that the consequences are unpredictable but harmless.
- Implementations are permitted to specify the consequences of this
-@@ -1143,9 +1143,9 @@ specifies a name that does not correspon
+- at IRindex{standard}
++ at IRindex standard
  
- @item @b{The consequences are undefined}  
+ @format
+ @group
+@@ -3797,29 +3796,26 @@ of an accessor for the @i{instance}.
  
-- at ITindex{consequences}
-+ at ITindex consequences
+ A @b{with-accessors} expression of the form:
  
-- at ITindex{undefined consequences}
-+ at ITindex undefined consequences
+- at center 
+ @example
  
- This means that the consequences are unpredictable. The consequences
- may range from harmless to fatal.  No @i{conforming code} may depend on
-@@ -1162,9 +1162,9 @@ variable has undefined consequences.''
+- at w{@t{(with-accessors} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
++ at center @w{@t{(with-accessors} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
+ @end example
  
- @item @b{An error might be signaled}  
+ @noindent
+ expands into the equivalent of
  
-- at IGindex{signal}
-+ at IGindex signal
+- at center 
+ @example
  
-- at ITindex{might signal}
-+ at ITindex might signal
+- at w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
++ at center @w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
+ @w{ @t{(symbol-macrolet (}@r{Q}_1... @r{Q}_n at t{)} @r{form}_1 ... at r{form}_k at t{))}}@*
+ @end example
  
- This means that the situation has undefined consequences;
- however, if an error is signaled, it is of the specified @i{type}.
-@@ -1172,7 +1172,7 @@ For example, ``@b{open} might signal an
+ @noindent
+ where @r{Q}_i is 
  
- @item @b{The return values are unspecified}  
+- at center
+ @example
+- at t{(}@r{variable-name}_i () 
+- at t{(@r{accessor-name}_i in))}
++ at center @t{(}@r{variable-name}_i () 
++ at center @t{(@r{accessor-name}_i in))}
+ @end example
  
-- at ITindex{unspecified values}
-+ at ITindex unspecified values
  
- This means that only the number and nature of the return values of a
- @i{form} are not specified.  However, the issue of whether or not
-@@ -1186,7 +1186,7 @@ rely on any particular aspect of the val
+@@ -3919,39 +3915,35 @@ of a @i{slot} in the @i{instance}.
  
- @item @b{Implementations may be extended to cover this situation}  
+ A @b{with-slots} expression of the form:
  
-- at ITindex{extensions}
-+ at ITindex extensions
+- at center 
+ @example
  
- This means that the @i{situation} has undefined consequences;
- however, a @i{conforming implementation} is free to treat
-@@ -1206,7 +1206,7 @@ specifiers to have a corresponding @i{cl
+- at w{@t{(with-slots} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
++ at center @w{@t{(with-slots} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
+ @end example
  
- @item @b{Implementations are free to extend the syntax}  
+ @noindent
+ expands into the equivalent of
  
-- at ITindex{extensions}
-+ at ITindex extensions
+- at center 
+ @example
  
- This means that in this situation implementations are permitted to
- define unambiguous extensions to the syntax of the @i{form} being
-@@ -1219,7 +1219,7 @@ example, ``no implementation is free to
+- at w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
++ at center @w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
+ @w{ @t{(symbol-macrolet (}@r{Q}_1... @r{Q}_n at t{)} @r{form}_1 ... at r{form}_k at t{))}}@*
+ @end example
  
- @item @b{A warning might be issued}  
+ @noindent
+ where @r{Q}_i is 
  
-- at ITindex{warning}
-+ at ITindex warning
+- at center 
+ @example
+- at t{(}@r{slot-entry}_i () 
+- at t{(slot-value }in '@r{slot-entry}_i at t{))}
++ at center @t{(}@r{slot-entry}_i () 
++ at center @t{(slot-value }in '@r{slot-entry}_i at t{))}
+ @end example
  
- This means that @i{implementations} are encouraged to issue a warning
- if the context is appropriate (@i{e.g.}, when compiling).  However, a
-@@ -1799,7 +1799,7 @@ In addition, it imposes requirements on
- @subsection Conforming Implementations
+ @noindent
+ if @r{slot-entry}_i is a @i{symbol}
+ and is
  
- A @i{conforming implementation}
-- at IGindex{conforming implementation}
-+ at IGindex conforming implementation
-  shall adhere to the requirements outlined
- in this section.
+- at center 
+ @example
+- at t{(}@r{variable-name}_i () 
+- at t{(slot-value }in '@r{slot-name}_i at t{))}
++ at center @t{(}@r{variable-name}_i () 
++ at center @t{(slot-value }in '@r{slot-name}_i at t{))}
+ @end example
  
-@@ -1906,9 +1906,9 @@ standard, then the conformance statement
- @node Conforming Programs,  , Conforming Implementations, Conformance
- @subsection Conforming Programs
  
-- at IGindex{conforming program}
-+ at IGindex conforming program
+@@ -3959,9 +3951,8 @@ and is
+ if @r{slot-entry}_i
+ is of the form 
  
-- at IGindex{conforming code}
-+ at IGindex conforming code
+- at center 
+ @example
+- at t{(}@r{variable-name}_i 
++ at center @t{(}@r{variable-name}_i 
+ @r{slot-name}_i at t{)}
+ @end example
  
- Code conforming with the requirements of this standard shall adhere to the
- following:
-@@ -1989,7 +1989,7 @@ presence of the feature @t{ACME} really
- @t{acme:initialize-something} is present in the environment.  In effect,
- using @t{#+} or @t{#-} in a @i{conforming program} means that the variable
- @b{*features*}
-- at IRindex{*features*}
-+ at IRindex *features*
+--- ./info/chap-9.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-9.texi	2013-08-26 15:13:23.000000000 -0600
+@@ -212,7 +212,7 @@ implicitly.  Macros such as @b{ccase}, @
  
- becomes just one more piece of input data to that 
- program.  Like any other data coming into a program, the programmer
-@@ -2177,7 +2177,7 @@ should be used if that is what is desire
+ A number of the functions in the condition system take arguments which
+ are identified as @i{condition designators}
+- at IGindex{condition designator}
++ at IGindex condition designator
+ .
+ By convention, those arguments are notated as
  
- The figures on the next twelve pages contain a complete enumeration
- of the 978 @i{external} @i{symbols} in the @t{COMMON-LISP} @i{package}.
-- at IPindex{common-lisp}
-+ at IPindex common-lisp
+@@ -275,10 +275,10 @@ If the @t{:report} argument to @b{define
+ a print function is defined that is called whenever 
+ the defined @i{condition} is printed while the @i{value} of @b{*print-escape*} is @i{false}. 
+ This function is called the @i{condition reporter}
+- at IGindex{condition reporter}
++ at IGindex condition reporter
+ ;
+ the text which it outputs is called a @i{report message}
+- at IGindex{report message}
++ at IGindex report message
+ .
  
- @format
- @group
---- ./info/chap-2.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-2.texi	2013-05-13 10:11:19.770813157 -0600
-@@ -20,7 +20,7 @@ interprets them as a printed representat
- constructs that @i{object}, and returns it.
+ When a @i{condition} is printed and @b{*print-escape*}
+@@ -1095,9 +1095,9 @@ actually fixing the problem).
  
- The syntax described by this chapter is called the @i{standard syntax}
-- at IGindex{standard syntax}
-+ at IGindex standard syntax
- .
- Operations are provided by @r{Common Lisp} so that
- various aspects of the syntax information represented by a @i{readtable} 
-@@ -40,7 +40,7 @@ the syntax used throughout this document
+ The order of evaluation of the @i{places} is not specified;
+ see @ref{Evaluation of Subforms to Places}.
+- at ITindex{order of evaluation}
++ at ITindex order of evaluation
  
- Syntax information for use by the @i{Lisp reader} is embodied in an
- @i{object} called a @i{readtable}
-- at IGindex{readtable}
-+ at IGindex readtable
- .  Among other things, 
- the @i{readtable} contains the association between @i{characters} 
- and @i{syntax types}.
-@@ -74,7 +74,7 @@ Figure 2--1 lists some @i{defined names}
+- at ITindex{evaluation order}
++ at ITindex evaluation order
  
- Several @i{readtables} describing different syntaxes can exist,
- but at any given time only one, called the @i{current readtable}
-- at IGindex{current readtable}
-+ at IGindex current readtable
- , 
- affects the way in which @i{expressions}_2 are parsed 
- into @i{objects} by the @i{Lisp reader}.
-@@ -87,7 +87,7 @@ To make a different @i{readtable} become
- @subsubsection The Standard Readtable
+ If a @i{place} @i{form} is supplied that produces more values than there
+ are store variables, the extra values are ignored. If the supplied 
+@@ -3576,7 +3576,8 @@ signaled.
+  (defun read-new-value ()
+    (format t "Enter a new value: ")
+    (multiple-value-list (eval (read))))
+- at result{}  READ-NEW-VALUE at page
++ at result{}  READ-NEW-VALUE
++ at page
+  (defun verify-or-fix-perfect-sundae (ice-cream sauce topping)
+    (do ()
+       ((all-start-with-same-letter ice-cream sauce topping))
+@@ -4061,15 +4062,15 @@ where the handler may wish to supply a r
+ @node abort (Function), , use-value, Conditions Dictionary
+ @subsection abort, continue, muffle-warning, store-value, use-value          [Function]
  
- The @i{standard readtable}
-- at IGindex{standard readtable}
-+ at IGindex standard readtable
-  conforms to @i{standard syntax}.
- The consequences are undefined if an attempt is made
- to modify the @i{standard readtable}.
-@@ -100,7 +100,7 @@ The @i{readtable case} of the @i{standar
- @subsubsection The Initial Readtable
+- at IRindex{abort}
++ at IRindex abort
  
- The @i{initial readtable}
-- at IGindex{initial readtable}
-+ at IGindex initial readtable
-  is
- the @i{readtable} that is the @i{current readtable}
- at the time when the @i{Lisp image} starts.
-@@ -135,7 +135,7 @@ the @i{variables} that influence the beh
- All @i{implementations} must support a @i{character} @i{repertoire}
- called @b{standard-char}; @i{characters} that are members of that
- @i{repertoire} are called @i{standard characters}
-- at IGindex{standard character}
-+ at IGindex standard character
- .
+- at IRindex{continue}
++ at IRindex continue
  
- The @b{standard-char} @i{repertoire} consists of
-@@ -261,7 +261,7 @@ for a more general user-written parser.
- When the @i{Lisp reader} is invoked, it reads a single character from 
- the @i{input} @i{stream} and dispatches according to the
- @i{syntax type}
-- at IGindex{syntax type}
-+ at IGindex syntax type
-  of that @i{character}.
- Every @i{character} that can appear in the @i{input} @i{stream}
- is of one of the @i{syntax types} shown in @i{Figure~2--6}.
-@@ -357,7 +357,7 @@ The following are descriptions of each k
+- at IRindex{muffle-warning}
++ at IRindex muffle-warning
  
- @i{Constituent} @i{characters} are used in @i{tokens}.
- A @i{token}
-- at IGindex{token}
-+ at IGindex token
-  is a representation of a @i{number} or a @i{symbol}.  
- Examples of @i{constituent} @i{characters} are letters and digits.
+- at IRindex{store-value}
++ at IRindex store-value
  
-@@ -473,7 +473,7 @@ is performed.
+- at IRindex{use-value}
++ at IRindex use-value
  
- A @i{macro character} has an associated @i{function}
- called a @i{reader macro function}
-- at IGindex{reader macro function}
-+ at IGindex reader macro function
-  that implements its specialized parsing behavior.
- An association of this kind can be established or modified under control of
- a @i{conforming program} by using 
-@@ -494,7 +494,7 @@ A @i{macro character} is either @i{termi
- The difference between @i{terminating} and @i{non-terminating} @i{macro characters} 
- lies in what happens when such characters occur in the middle of a @i{token}.  
- If a @i{non-terminating}
-- at IGindex{non-terminating}
-+ at IGindex non-terminating
-  @i{macro character} occurs in the middle of a @i{token},
- the @i{function} associated 
- with the @i{non-terminating} @i{macro character} is not called,
-@@ -502,7 +502,7 @@ and the
- @i{non-terminating} @i{macro character} does not terminate the @i{token}'s name; it
- becomes part of the name as if the @i{macro character} were really a constituent
- character.  A @i{terminating}
-- at IGindex{terminating}
-+ at IGindex terminating
-  @i{macro character} terminates any @i{token},
- and its associated @i{reader macro function}
- is called no matter where the @i{character} appears.
-@@ -536,7 +536,7 @@ see @ref{Standard Macro Characters}.
- @subsubsection Multiple Escape Characters
+ @code{abort}  @i{@r{&optional} condition} 
+        @result{}  #<NoValue>
+--- ./info/chap-11.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-11.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -22,11 +22,11 @@
+ @subsection Introduction to Packages
  
- A pair of @i{multiple escape}
-- at IGindex{multiple escape}
-+ at IGindex multiple escape
-  @i{characters}
- is used to indicate that an enclosed sequence of characters,
- including possible @i{macro characters} and @i{whitespace}_2 @i{characters},
-@@ -565,7 +565,7 @@ in @i{standard syntax}.
- @subsubsection Single Escape Character
+ A @i{package}
+- at IGindex{package}
++ at IGindex package
+  establishes a mapping from names to @i{symbols}. 
+ At any given time, one @i{package} is current.
+ The @i{current package}
+- at IGindex{current package}
++ at IGindex current package
+  is the one that is the @i{value} of @b{*package*}.
+ When using the @i{Lisp reader},
+ it is possible to refer to @i{symbols} in @i{packages} 
+@@ -99,14 +99,14 @@ specified by the caller.
+ The mappings in a @i{package} are divided into two classes, external and internal.
+ The @i{symbols} targeted by these different mappings 
+ are called @i{external symbols} and @i{internal symbols}
+- at IGindex{internal symbol}
++ at IGindex internal symbol
+  of the
+ @i{package}. Within a @i{package}, a name refers to one
+ @i{symbol} or to none; if it does refer
+ to a @i{symbol}, then it is either external or internal in that
+ @i{package}, but not both.
+ @i{External symbols}
+- at IGindex{external symbol}
++ at IGindex external symbol
  
- A @i{single escape}
-- at IGindex{single escape}
-+ at IGindex single escape
-  is used to indicate that 
- the next @i{character} is to be treated as 
- an @i{alphabetic}_2 @i{character}
---- ./info/chap-5.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-5.texi	2013-05-13 10:11:19.771813152 -0600
-@@ -24,10 +24,10 @@
- @subsection Overview of Places and Generalized Reference
+ are part of the package's public interface to other @i{packages}.
+ @i{Symbols} become @i{external symbols} of a given
+@@ -127,7 +127,7 @@ However, some of these mappings might be
+ itself, while other mappings are inherited from other @i{packages} 
+ via @b{use-package}.
+ A @i{symbol} is said to be @i{present}
+- at IGindex{present}
++ at IGindex present
+  in a @i{package} 
+ if the mapping is in the @i{package} itself and is
+ not inherited from somewhere else.
+@@ -143,7 +143,7 @@ to refer to an @i{internal symbol} using
+ @subsubsection Accessibility of Symbols in a Package
  
- A @i{generalized reference}
-- at IGindex{generalized reference}
-+ at IGindex generalized reference
-  is the use of a @i{form},
- sometimes called a @i{place}
-- at IGindex{place}
-+ at IGindex place
- ,
- as if it were a @i{variable} that could be read and written.
- The @i{value} of a @i{place} is 
-@@ -115,9 +115,9 @@ For all @i{places} defined by this speci
- (@i{e.g.}, @b{getf}, @b{ldb}, ...),
- this order of evaluation is left-to-right.
+ A @i{symbol} becomes @i{accessible}
+- at IGindex{accessible}
++ at IGindex accessible
+  in a @i{package} 
+     if that is its @i{home package} when it is created,
+  or if it is @i{imported} into that @i{package},
+@@ -246,7 +246,7 @@ never signal a name-conflict error.
+ do not need to do any name-conflict checking.
+ @b{unintern} does name-conflict checking only when a @i{symbol} 
+ being @i{uninterned} is a @i{shadowing symbol}
+- at IGindex{shadowing symbol}
++ at IGindex shadowing symbol
+ .
  
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+ @item --  
+@@ -293,7 +293,7 @@ with the @i{same} @i{name} (under @b{str
+ from two other @i{packages} can be resolved in
+ favor of either @i{symbol} by importing it into the using
+ @i{package} and making it a @i{shadowing symbol}
+- at IGindex{shadowing symbol}
++ at IGindex shadowing symbol
+ ,
+ just as with @b{use-package}.
+ @end table
+@@ -335,9 +335,9 @@ is given in Figure 11--2.
+ @node The COMMON-LISP Package, Constraints on the COMMON-LISP Package for Conforming Implementations, Standardized Packages, Standardized Packages
+ @subsubsection The COMMON-LISP Package
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+- at IPindex{common-lisp}
++ at IPindex common-lisp
  
- When a @i{place} is derived from a macro expansion,
- this rule is applied after the macro is expanded to find the appropriate @i{place}. 
-@@ -186,9 +186,9 @@ or none of the cases hold in
- @item 4.  
- For @b{assert}, the order of evaluation of the generalized 
- references is not specified.
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+- at IPindex{cl}
++ at IPindex cl
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+ The @t{COMMON-LISP} @i{package} contains the primitives of the @r{Common Lisp} system as
+ defined by this specification.  Its @i{external} @i{symbols} include
+@@ -397,7 +397,7 @@ or a @i{symbol} that is otherwise @i{acc
+ @node Constraints on the COMMON-LISP Package for Conforming Programs, Some Exceptions to Constraints on the COMMON-LISP Package for Conforming Programs, Constraints on the COMMON-LISP Package for Conforming Implementations, Standardized Packages
+ @subsubsection Constraints on the COMMON-LISP Package for Conforming Programs
  
- @end table
+- at ITindex{redefinition}
++ at ITindex redefinition
  
-@@ -2568,10 +2568,11 @@ The @i{primary value} of each @i{form} i
+ Except where explicitly allowed, the consequences are undefined if any
+ of the following actions are performed on an @i{external symbol} 
+@@ -542,9 +542,9 @@ and to declare the @b{ftype} of that @i{
+ @node The COMMON-LISP-USER Package, The KEYWORD Package, Some Exceptions to Constraints on the COMMON-LISP Package for Conforming Programs, Standardized Packages
+ @subsubsection The COMMON-LISP-USER Package
  
- @w{@i{pair} ::=var form}
+- at IPindex{common-lisp-user}
++ at IPindex common-lisp-user
  
-+ at iftex
- @subsubheading  Pronunciation::
+- at IPindex{cl-user}
++ at IPindex cl-user
  
-- at b{psetq}: pronounced  @tex p\=e'set ,ky\"u 
-- at end tex
-+ at b{psetq}: pronounced p\=e'set ,ky\"u 
-+ at end iftex
+ The @t{COMMON-LISP-USER} @i{package} is the @i{current package} when 
+ a @r{Common Lisp} system starts up.  This @i{package} @i{uses} the @t{COMMON-LISP} @i{package}.
+@@ -556,7 +556,7 @@ it can @i{use} other @i{implementation-d
+ @node The KEYWORD Package, Interning a Symbol in the KEYWORD Package, The COMMON-LISP-USER Package, Standardized Packages
+ @subsubsection The KEYWORD Package
  
- @subsubheading  Arguments and Values::
+- at IPindex{keyword}
++ at IPindex keyword
  
-@@ -2724,9 +2725,9 @@ to which a @b{throw} is transferring con
- @t{(throw 'bar @i{form})}.
+ The @t{KEYWORD} @i{package} contains @i{symbols}, called @i{keywords}_1,
+ that are typically used as special markers in @i{programs} 
+--- ./info/chap-12.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-12.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -4823,9 +4823,9 @@ in a given @i{place}.
+ The order of evaluation, when an @b{ldb} form is supplied
+ to @b{setf}, is exactly left-to-right.
  
- The order of execution of @b{catch} follows:
 - at ITindex{order of evaluation}
 + at ITindex order of evaluation
  
 - at ITindex{evaluation order}
 + at ITindex evaluation order
  
- @table @asis
+ The effect is to perform a @b{dpb} operation
+ and then store the result back into the @i{place}.
+--- ./info/chap-13.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-13.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -30,7 +30,7 @@
+ @subsection Introduction to Characters
  
-@@ -4559,9 +4560,9 @@ and the @b{unless} @i{form} returns @b{n
+ A @i{character}
+- at IGindex{character}
++ at IGindex character
+  is an @i{object} that represents a unitary token 
+ (@i{e.g.}, a letter, a special symbol, or a ``control character'')
+ in an aggregate quantity of text
+@@ -112,7 +112,7 @@ Whether and how the @i{script} or @i{scr
+ @subsubsection Character Repertoires
  
- @w{@i{clause} ::=normal-clause | otherwise-clause}
+ A @i{repertoire}
+- at IGindex{repertoire}
++ at IGindex repertoire
+  is a @i{type specifier} for a @i{subtype} of @i{type} @b{character}.
  
-- at IRindex{otherwise}
-+ at IRindex otherwise
+ This term is generally used when describing a collection of @i{characters}
+@@ -152,7 +152,7 @@ in some other, @i{implementation-defined
+ For any @i{implementation-defined} @i{attribute}
+ there is a distinguished value
+ called the @i{null}
+- at IGindex{null}
++ at IGindex null
+  value for that @i{attribute}. 
+ A @i{character} for which each @i{implementation-defined} @i{attribute}
+ has the null value for that @i{attribute} is called a @i{simple} @i{character}.
+@@ -198,7 +198,7 @@ which might have been enabled in the @i{
+ @subsubsection Graphic Characters
  
-- at IRindex{t}
-+ at IRindex t
+ @i{Characters} that are classified as @i{graphic}
+- at IGindex{graphic}
++ at IGindex graphic
+ , or displayable, are each
+ associated with a glyph, a visual representation of the @i{character}.
  
- @subsubheading  Arguments and Values::
+@@ -212,7 +212,7 @@ Of the @i{standard characters},
+  and all others are @i{graphic}; see @ref{Standard Characters}.
  
-@@ -4732,9 +4733,9 @@ message.
+ @i{Characters} that are not @i{graphic} are called @i{non-graphic}
+- at IGindex{non-graphic}
++ at IGindex non-graphic
+ .
  
- @w{@i{clause} ::=normal-clause | otherwise-clause}
+ @i{Non-graphic} @i{characters} are sometimes informally called
+--- ./info/chap-14.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-14.texi	2013-08-26 15:15:58.000000000 -0600
+@@ -14,7 +14,7 @@
+ @c including concept-conses
  
-- at IRindex{otherwise}
-+ at IRindex otherwise
+ A @i{cons}
+- at IGindex{cons}
++ at IGindex cons
+  is a compound data @i{object} 
+ having two components called the @i{car} and the @i{cdr}.
  
-- at IRindex{t}
-+ at IRindex t
+@@ -43,13 +43,13 @@ support each of these various views.
+ @subsection Conses as Trees
  
- @subsubheading  Arguments and Values::
+ A @i{tree}
+- at IGindex{tree}
++ at IGindex tree
+  is a binary recursive data structure made up of
+ @i{conses} and @i{atoms}:
+ the @i{conses} are themselves also @i{trees}
+ (sometimes called ``subtrees'' or ``branches''), and the @i{atoms}
+ are terminal nodes (sometimes called @i{leaves}
+- at IGindex{leaves}
++ at IGindex leaves
+ ). 
+ Typically, the @i{leaves} represent data while the branches 
+ establish some relationship among that data.
+@@ -91,30 +91,30 @@ if that @i{tree} is circular.
+ @subsection Conses as Lists
+ 
+ A @i{list}
+- at IGindex{list}
++ at IGindex list
+  is a chain of @i{conses} in which the @i{car} of each
+ @i{cons} is an @i{element} of the @i{list}, 
+ and the @i{cdr} of each @i{cons} is either the next
+ link in the chain or a terminating @i{atom}.  
  
-@@ -5123,9 +5124,9 @@ is defined to always behave in the same
+ A @i{proper list}
+- at IGindex{proper list}
++ at IGindex proper list
+  is a @i{list} terminated by the @i{empty list}.
+ The @i{empty list} is a @i{proper list}, but is not a @i{cons}.
  
- in order that the rules for order of evaluation and side-effects be consistent
- with those used by @b{setf}.
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+ An @i{improper list}
+- at IGindex{improper list}
++ at IGindex improper list
+  is a @i{list} that is not a @i{proper list};
+ that is, it is a @i{circular list} or a @i{dotted list}.
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+ A @i{dotted list}
+- at IGindex{dotted list}
++ at IGindex dotted list
+  is a @i{list} that has a terminating @i{atom}
+ that is not the @i{empty list}.  A @i{non-nil} @i{atom} by itself
+ is not considered to be a @i{list} of any kind---not even a @i{dotted list}.
  
- See @ref{VALUES Forms as Places}.
+ A @i{circular list}
+- at IGindex{circular list}
++ at IGindex circular list
+  is a chain of @i{conses} that has no termination 
+ because some @i{cons} in the chain is the @i{cdr} of a later @i{cons}.
  
---- ./info/chap-22.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-22.texi	2013-05-13 10:11:19.772813147 -0600
-@@ -79,7 +79,7 @@ program-readable.
+@@ -147,7 +147,7 @@ because some @i{cons} in the chain is th
+ @subsubsection Lists as Association Lists
  
- A number of option variables, called
- @i{printer control variables}
-- at IGindex{printer control variable}
-+ at IGindex printer control variable
- ,
- are provided to permit control of individual aspects of the 
- printed representation of @i{objects}.
-@@ -133,7 +133,7 @@ is that the @i{Lisp printer} behaves as
- For notational convenience, we say that 
- if the value of either @b{*print-readably*} or @b{*print-escape*} is @i{true}, 
- then @i{printer escaping}
-- at IGindex{printer escaping}
-+ at IGindex printer escaping
-  is ``enabled'';
- and we say that
- if the values of both @b{*print-readably*} and @b{*print-escape*} are @i{false}, 
-@@ -205,7 +205,7 @@ see @ref{Syntax of an Integer}.
- @node Printing Ratios, Printing Floats, Printing Integers, Default Print-Object Methods
- @subsubsection Printing Ratios
+ An @i{association list}
+- at IGindex{association list}
++ at IGindex association list
+  is a @i{list} of @i{conses} 
+ representing an association of @i{keys} with @i{values}, 
+ where the @i{car} of each @i{cons} is the @i{key} 
+@@ -269,24 +269,24 @@ if that @i{list} is @i{circular}.
+ @subsubheading  Description::
  
-- at IRindex{ratio}
-+ at IRindex ratio
+ A @i{list}
+- at IGindex{list}
++ at IGindex list
+  is a chain of @i{conses} in which the @i{car} of each
+ @i{cons} is an @i{element} of the @i{list}, and the @i{cdr} of
+ each @i{cons} is either the next link in the chain or a terminating
+ @i{atom}.
  
- @i{Ratios} are printed as follows:
- the absolute value of the numerator is printed, as for an @i{integer};
-@@ -224,7 +224,7 @@ see @ref{Syntax of a Ratio}.
- @node Printing Floats, Printing Complexes, Printing Ratios, Default Print-Object Methods
- @subsubsection Printing Floats
+ A @i{proper list}
+- at IGindex{proper list}
++ at IGindex proper list
+  is a chain of @i{conses} terminated by 
+ the @i{empty list}
+- at IGindex{empty list}
++ at IGindex empty list
+ , @t{()}, which is  itself a @i{proper list}.
+ A @i{dotted list}
+- at IGindex{dotted list}
++ at IGindex dotted list
+  is a @i{list} which has a terminating @i{atom} 
+ that is not the @i{empty list}.
+ A @i{circular list}
+- at IGindex{circular list}
++ at IGindex circular list
+  is a chain of @i{conses} that has no termination
+ because some @i{cons} in the chain is the @i{cdr} of a later @i{cons}.
  
-- at IRindex{float}
-+ at IRindex float
+--- ./info/chap-15.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-15.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -51,7 +51,7 @@ less than the corresponding @i{array} @i
+ @subsubsection Array Dimensions
  
- If the magnitude of the @i{float} is either zero or between 10^@r{-3} (inclusive)
- and 10^7 (exclusive), it is printed as the integer part of the number,
-@@ -263,7 +263,7 @@ see @ref{Syntax of a Float}.
- @node Printing Complexes, Note about Printing Numbers, Printing Floats, Default Print-Object Methods
- @subsubsection Printing Complexes
+ An axis of an @i{array} is called a @i{dimension}
+- at IGindex{dimension}
++ at IGindex dimension
+ .
+ 
+ Each @i{dimension} is a non-negative 
+@@ -76,7 +76,7 @@ but there is a minimum requirement on th
  
-- at IRindex{complex}
-+ at IRindex complex
+ An @i{array} can have any number of @i{dimensions} (including zero).
+ The number of @i{dimensions} is called the @i{rank}
+- at IGindex{rank}
++ at IGindex rank
+ .
  
- A @i{complex} is printed as @t{#C}, an open parenthesis,
- the printed representation of its real part, a space,
-@@ -929,7 +929,7 @@ see @ref{Sharpsign Dot}.
- @subsection Pretty Printer Concepts
+ If the rank of an @i{array} is zero then the @i{array} is said to have
+@@ -88,21 +88,21 @@ is then 1; a zero-rank @i{array} therefo
  
- The facilities provided by the @i{pretty printer}
-- at IGindex{pretty printer}
-+ at IGindex pretty printer
-  permit
- @i{programs} to redefine the way in which @i{code} is displayed, 
- and allow the full power of @i{pretty printing} to be applied 
-@@ -971,13 +971,13 @@ The actions of the @i{pretty printer} wh
- large to fit in the space available can be precisely controlled.
- Three concepts underlie 
- the way these operations work--- at i{logical blocks}
-- at IGindex{logical blocks}
-+ at IGindex logical blocks
- ,
- 			        @i{conditional newlines}
-- at IGindex{conditional newlines}
-+ at IGindex conditional newlines
- ,
- 			    and @i{sections}
-- at IGindex{sections}
-+ at IGindex sections
+ An @i{array} of @i{rank} one (@i{i.e.}, a one-dimensional @i{array})
+ is called a @i{vector}
+- at IGindex{vector}
++ at IGindex vector
  .
- Before proceeding further, it is important to define these terms.
  
-@@ -1080,7 +1080,7 @@ The @b{formatter} @i{macro} provides the
- to do that same printing but without losing the textual compactness of @i{format strings}.
+ @node Fill Pointers, Multidimensional Arrays, Vectors, Array Elements
+ @subsubsection Fill Pointers
  
- A @i{format control}
-- at IGindex{format control}
-+ at IGindex format control
-  is either a @i{format string} or a @i{function}
- that was returned by the the @b{formatter} @i{macro}.
+ A @i{fill pointer}
+- at IGindex{fill pointer}
++ at IGindex fill pointer
+  is a non-negative @i{integer} no
+ larger than the total number of @i{elements} in a @i{vector}.
+ Not all @i{vectors} have @i{fill pointers}.
+ See the @i{functions} @b{make-array} and @b{adjust-array}.
  
-@@ -1088,7 +1088,7 @@ that was returned by the the @b{formatte
- @subsubsection Pretty Print Dispatch Tables
+ An @i{element} of a @i{vector} is said to be @i{active}
+- at IGindex{active}
++ at IGindex active
+  if it has
+ an index that is greater than or equal to zero, 
+ but less than the @i{fill pointer} (if any).
+@@ -175,7 +175,7 @@ creation, @i{access}, and information op
+ @subsubsection Array Upgrading
  
- A @i{pprint dispatch table}
-- at IGindex{pprint dispatch table}
-+ at IGindex pprint dispatch table
-  is a mapping from keys to pairs of values.  
- Each key is a @i{type specifier}.  
- The values associated with a key are
-@@ -1099,7 +1099,7 @@ of keys being tested by @b{equal}.
+ The @i{upgraded array element type}
+- at IGindex{upgraded array element type}
++ at IGindex upgraded array element type
+  of a @i{type} T_1
+ is a @i{type} T_2 that is a @i{supertype} of T_1
+ and that is used instead of T_1 whenever T_1
+@@ -185,11 +185,11 @@ for object creation or type discriminati
+ During creation of an @i{array},
+ the @i{element type} that was requested 
+ is called the @i{expressed array element type}
+- at IGindex{expressed array element type}
++ at IGindex expressed array element type
+ .
+ The @i{upgraded array element type} of the @i{expressed array element type}
+ becomes the @i{actual array element type}
+- at IGindex{actual array element type}
++ at IGindex actual array element type
+  of the @i{array} that is created.
  
- When @b{*print-pretty*} is @i{true}, 
- the @i{current pprint dispatch table}
-- at IGindex{current pprint dispatch table}
-+ at IGindex current pprint dispatch table
-  (in @b{*print-pprint-dispatch*})
- controls how @i{objects} are printed.
- The information in this table takes precedence over
-@@ -1170,7 +1170,7 @@ If the line width available is greater t
- output appears on one line.  If the line width available is reduced to @t{25},
- a line break is inserted at the 
- linear-style conditional newline
-- at ITindex{linear-style conditional newline}
-+ at ITindex linear-style conditional newline
+ @i{Type} @i{upgrading} implies a movement upwards in the type hierarchy lattice.
+@@ -218,7 +218,7 @@ will @i{upgrade} a given @i{type}.
+ @b{character} or a @i{subtype} of @b{character}
  
- before the
- @i{expression} @t{(* x y)}, producing the output shown.  The
-@@ -1197,7 +1197,7 @@ If @b{*print-miser-width*} were greater
- output above would have been as follows, because all indentation changes 
- are ignored in miser mode and line breaks are inserted at 
- miser-style conditional newlines.
-- at ITindex{miser-style conditional newline}
-+ at ITindex miser-style conditional newline
+ are called @i{strings}
+- at IGindex{string}
++ at IGindex string
+ . 
+ @i{Strings} are of @i{type} @b{string}.
+ Figure 15--2 lists some @i{defined names} related to @i{strings}.
+@@ -250,7 +250,7 @@ see instead @ref{Strings}.
  
- @example
-  (DEFUN
-@@ -1234,7 +1234,7 @@ be produced no matter whether the list c
- two elements, or (being malformed) has more than two elements.)   
- A space and a 
- fill-style conditional newline
-- at ITindex{fill-style conditional newline}
-+ at ITindex fill-style conditional newline
+ @i{Vectors} whose @i{elements} are restricted to @i{type}
+ @b{bit} are called @i{bit vectors}
+- at IGindex{bit vector}
++ at IGindex bit vector
+ .
+ @i{Bit vectors} are of @i{type} @b{bit-vector}.
+ Figure 15--3 lists some @i{defined names} for operations on @i{bit arrays}.
+--- ./info/chap-17.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-17.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -15,7 +15,7 @@
+ @c including concept-sequences
  
- are placed after
- each pair except the last.  The loop at the end of the topmost
-@@ -3698,7 +3698,7 @@ This @i{parameter} is treated as follows
- @item @t{:linear}  
- This specifies a
- ``linear-style'' @i{conditional newline}.
-- at ITindex{linear-style conditional newline}
-+ at ITindex linear-style conditional newline
+ A @i{sequence}
+- at IGindex{sequence}
++ at IGindex sequence
+  is an ordered collection of @i{elements},
+ implemented as either a @i{vector} or a @i{list}.
  
- A line break is inserted 
- if and only if the immediately containing @i{section}
-@@ -3710,7 +3710,7 @@ or at none of them.
- @item @t{:miser}  
- This specifies a 
- ``miser-style'' @i{conditional newline}.
-- at ITindex{miser-style conditional newline}
-+ at ITindex miser-style conditional newline
+@@ -25,7 +25,7 @@ of @i{types} that are @i{subtypes} of @b
+ (@i{e.g.}, @b{list}, @b{make-list}, @b{mapcar}, and @b{vector}).
  
- A line break is inserted
- if and only if the immediately containing @i{section}
-@@ -3727,7 +3727,7 @@ is less than or equal to
- @item @t{:fill}  
- This specifies a
- ``fill-style'' @i{conditional newline}.
-- at ITindex{fill-style conditional newline}
-+ at ITindex fill-style conditional newline
+ A @i{sequence function}
+- at IGindex{sequence function}
++ at IGindex sequence function
+  is a @i{function} 
+    defined by this specification
+ or added as an extension by the @i{implementation} 
+@@ -131,7 +131,7 @@ is a @i{designator} for a  @i{function}
+ of two @i{arguments}, O and Z_i.
+ An E_i is said (or, sometimes, an O and an E_i are said)
+ to @i{satisfy the test}
+- at IGindex{satisfy the test}
++ at IGindex satisfy the test
  
- A line break is inserted if and only if
- either (a) the following @i{section} cannot be printed 
-@@ -3746,7 +3746,7 @@ fill-style conditional newlines act like
- @item @t{:mandatory}  
- This specifies a
- ``mandatory-style'' @i{conditional newline}.
-- at ITindex{mandatory-style conditional newline}
-+ at ITindex mandatory-style conditional newline
+ if this @t{:test} @i{function} returns a @i{generalized boolean} representing 
+ @i{true}.
+@@ -141,7 +141,7 @@ is @i{designator} for a @i{function}
+ of two @i{arguments}, O and Z_i.
+ An E_i is said (or, sometimes, an O and an E_i are said)
+ to @i{satisfy the test}
+- at IGindex{satisfy the test}
++ at IGindex satisfy the test
  
- A line break is always inserted.
- This implies that  none of the containing @i{sections}
-@@ -4511,7 +4511,7 @@ The initial @i{value} of @b{*print-radix
- @b{*print-base*} and @b{*print-radix*} control the printing
- of @i{rationals}.
- The @i{value} of @b{*print-base*} is called the @i{current output base}
-- at IGindex{current output base}
-+ at IGindex current output base
- .
+ if this @t{:test-not} @i{function}
+ returns a @i{generalized boolean} representing @i{false}.
+@@ -226,7 +226,7 @@ and @i{yielding} an @i{object} Z_i to be
+ ends in ``@t{-if}'' accept a first @i{argument} that is a @i{designator} for a 
+ @i{function} of one @i{argument}, Z_i.
+ An E_i is said to @i{satisfy the test}
+- at IGindex{satisfy the test}
++ at IGindex satisfy the test
+  if this @t{:test} @i{function}
+ returns a @i{generalized boolean} representing @i{true}.
  
- The @i{value} of @b{*print-base*} is the @i{radix} in which the printer 
---- ./info/chap-21.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-21.texi	2013-05-13 10:11:19.773813142 -0600
-@@ -24,19 +24,19 @@
- @subsection Introduction to Streams
+@@ -234,7 +234,7 @@ returns a @i{generalized boolean} repres
+ ends in ``@t{-if-not}'' accept a first @i{argument} that is a @i{designator} for a 
+ @i{function} of one @i{argument}, Z_i.
+ An E_i is said to @i{satisfy the test}
+- at IGindex{satisfy the test}
++ at IGindex satisfy the test
+  if this @t{:test} @i{function}
+ returns a @i{generalized boolean} representing @i{false}.
  
- A @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
-  is an @i{object} that can be used with an input or output
- function to identify an appropriate source or sink of @i{characters} or 
- @i{bytes} for that operation.
- A @i{character}
-- at IGindex{character}
-+ at IGindex character
-  @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
-  is a source or sink of @i{characters}.
- A @i{binary}
-- at IGindex{binary}
-+ at IGindex binary
-  @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
-  is a source or sink of @i{bytes}.
+--- ./info/chap-19.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-19.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -37,7 +37,7 @@ as @i{namestrings} and as @i{pathnames}.
+ @subsection Namestrings as Filenames
+ 
+ A @i{namestring}
+- at IGindex{namestring}
++ at IGindex namestring
+  is a @i{string} that represents a @i{filename}.
  
- Some operations may be performed on any kind of @i{stream};
-@@ -79,14 +79,14 @@ and @b{read-byte} is only defined for @i
+ In general, the syntax of @i{namestrings} involves the use of 
+@@ -62,7 +62,7 @@ or @b{parse-namestring}.
+ @subsection Pathnames as Filenames
  
- A @i{stream}, whether a @i{character} @i{stream} or a @i{binary} @i{stream},
- can be an @i{input}
-- at IGindex{input}
-+ at IGindex input
-  @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
-  (source of data),
-        an @i{output}
-- at IGindex{output}
-+ at IGindex output
-  @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
-  (sink for data),
-        both, 
-     or (@i{e.g.}, when ``@t{:direction :probe}'' is given to @b{open}) neither.
-@@ -129,9 +129,9 @@ Figure 21--3 shows @i{operators} relatin
+ @i{Pathnames}
+- at IGindex{pathname}
++ at IGindex pathname
+  are structured @i{objects} that can represent,
+ in an @i{implementation-independent} way,
+ the @i{filenames} that are used natively by an underlying @i{file system}.
+@@ -317,7 +317,7 @@ relating to @i{pathnames} that permit a
  
- A @i{stream} that is both an @i{input} @i{stream} and an @i{output} @i{stream}
- is called a @i{bidirectional}
-- at IGindex{bidirectional}
-+ at IGindex bidirectional
-  @i{stream}
-- at IGindex{stream}
-+ at IGindex stream
- .
- See the @i{functions} @b{input-stream-p} and @b{output-stream-p}.
+ For the functions in @i{Figure~19--2},
+ a value of @t{:local}
+- at c @IKindex{local}
++ at c @IKindex local
+  for the @t{:case} argument 
+ (the default for these functions)
+ indicates that the functions should receive and yield @i{strings} in component values
+@@ -334,7 +334,7 @@ the @i{strings} will be translated to th
  
-@@ -155,9 +155,9 @@ shows a list of @i{operators} that relat
- @subsubsection Open and Closed Streams
+ For the functions in @i{Figure~19--2},
+ a value of @t{:common}
+- at c @IKindex{common}
++ at c @IKindex common
+  for the @t{:case} argument 
+ that these @i{functions} should receive 
+ and yield @i{strings} in component values according to the following conventions:
+@@ -372,7 +372,7 @@ rather than an actual @b{nil} in some @i
+ @subsubsection :WILD as a Component Value
  
- @i{Streams} are either @i{open}
-- at IGindex{open}
-+ at IGindex open
-  or @i{closed}
-- at IGindex{closed}
-+ at IGindex closed
- .  
+ If @t{:wild}
+- at c @IKindex{wild}
++ at c @IKindex wild
+  is the value of a @i{pathname} component,
+ that component is considered to be a wildcard, which matches anything.
  
- Except as explicitly specified otherwise,
-@@ -182,7 +182,7 @@ and for that same @i{stream} once it has
- @subsubsection Interactive Streams
+@@ -391,13 +391,13 @@ of a @i{pathname}, the effect is equival
+ @t{(:absolute :wild-inferiors)},
+ or the same as @t{(:absolute :wild)} in a @i{file system} that does not support
+ @t{:wild-inferiors}.
+- at c @IKindex{wild-inferiors}
++ at c @IKindex wild-inferiors
  
- An @i{interactive stream}
-- at IGindex{interactive stream}
-+ at IGindex interactive stream
-  is one on which it makes sense to perform
- interactive querying.
+ @node ->UNSPECIFIC as a Component Value, Relation between component values NIL and ->UNSPECIFIC, ->WILD as a Component Value, Interpreting Pathname Component Values
+ @subsubsection :UNSPECIFIC as a Component Value
  
-@@ -223,7 +223,7 @@ so interactive queries to such streams m
- @subsubsection File Streams
+ If @t{:unspecific}
+- at c @IKindex{unspecific}
++ at c @IKindex unspecific
+  is the value of a @i{pathname} component,
+ the component is considered to be ``absent'' 
+ or to ``have no meaning''
+@@ -511,10 +511,10 @@ The directory might be a @i{string},
+ The directory can be a @i{list} of @i{strings} and @i{symbols}. 
  
- Some @i{streams}, called @i{file streams}
-- at IGindex{file stream}
-+ at IGindex file stream
- , provide access to @i{files}.
- An @i{object} of @i{class} @b{file-stream} is used to represent a @i{file stream}.
+ The @i{car} of the @i{list} is one of the symbols @t{:absolute}
+- at c @IKindex{absolute}
++ at c @IKindex absolute
+  or 
+ @t{:relative}
+- at c @IKindex{relative}
++ at c @IKindex relative
+ , meaning:
  
-@@ -276,7 +276,7 @@ about these subclasses.
+ @table @asis
+@@ -554,13 +554,13 @@ to a file system for which it does not m
+ signals an error of @i{type} @b{file-error}.
+ For example, Unix does not support @t{:wild-inferiors} in most implementations.
  
- @i{Variables} whose @i{values} must be @i{streams} are sometimes called 
- @i{stream variables}
-- at IGindex{stream variable}
-+ at IGindex stream variable
- .
+- at c @IKindex{wild}
++ at c @IKindex wild
  
- Certain @i{stream variables} are defined by this specification 
+- at c @IKindex{wild-inferiors}
++ at c @IKindex wild-inferiors
+ 
+- at c @IKindex{up}
++ at c @IKindex up
+ 
+- at c @IKindex{back}
++ at c @IKindex back
+ 
+ @format
+ @group
 --- ./info/chap-20.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-20.texi	2013-05-13 10:11:19.774813138 -0600
++++ ./info/chap-20.texi	2013-05-13 10:11:19.000000000 -0600
 @@ -16,13 +16,13 @@
  This section describes the @r{Common Lisp} interface to file systems.
  The model used by this interface assumes 
@@ -2257,243 +2138,377 @@
  .  
  
  The @i{truename} of a @i{file} may differ from other @i{filenames}
---- ./info/chap-7.texi.orig	2003-12-30 09:50:01.000000000 -0700
-+++ ./info/chap-7.texi	2013-05-13 10:11:19.775813133 -0600
-@@ -22,7 +22,7 @@ The @i{generic function} @b{make-instanc
- @i{instance} of a @i{class}.  The first argument is a @i{class} or
- the @i{name} of a @i{class}, and the remaining arguments form an 
- @i{initialization argument list}
-- at IGindex{initialization argument list}
-+ at IGindex initialization argument list
- .
- 
- The initialization of a new @i{instance} consists of several distinct
-@@ -295,9 +295,9 @@ used to initialize a @i{slot} only if no
- associated with that @i{slot} is given as an argument to 
- @b{make-instance} or is defaulted by @t{:default-initargs}.
- 
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
- 
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
- 
- The order of evaluation of default value @i{forms} for initialization
- arguments and the order of evaluation of @t{:initform} forms are
-@@ -386,7 +386,6 @@ The following is an example of the above
-    (:default-initargs a 1 b 2))
- @end example
- 
-- at center 
- @example
- @format
- @group
-@@ -1075,7 +1074,7 @@ the @i{method} @i{accesses} the @i{local
- @subsection Introduction to Generic Functions
- 
- A @i{generic function}
-- at IGindex{generic function}
-+ at IGindex generic function
-  is a function whose behavior depends on
- the @i{classes} or identities of the @i{arguments} supplied to it.
- A @i{generic function} @i{object} 
-@@ -1153,7 +1152,7 @@ The only @i{standardized} @i{operator} i
- Some @i{operators} define @i{methods} for a @i{generic function}.
- These @i{operators} will be referred to as
- @i{method-defining operators}
-- at IGindex{method-defining operator}
-+ at IGindex method-defining operator
- ;
- their associated @i{forms} are called @i{method-defining forms}.
- The @i{standardized} @i{method-defining operators} are listed in Figure 7--2.
-@@ -1235,7 +1234,7 @@ an error is signaled.  If a @i{method-de
- a @i{lambda list} for that @i{generic function} is derived from the
- @i{lambda list} of the @i{method} in the @i{method-defining form} in such a way
- as to be @i{congruent} with it.  For a discussion of @i{congruence}
-- at IGindex{congruence}
-+ at IGindex congruence
- ,
- see @ref{Congruent Lambda-lists for all Methods of a Generic Function}.
- 
-@@ -1292,7 +1291,7 @@ selection to determine whether an argume
+--- ./info/chap-21.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-21.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -24,19 +24,19 @@
+ @subsection Introduction to Streams
  
- A method all of whose @i{parameter specializers} are 
- the @i{class} @b{t} is called a @i{default method}
-- at IGindex{default method}
-+ at IGindex default method
- ; it is always applicable but
- may be shadowed by a more specific method.
+ A @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+  is an @i{object} that can be used with an input or output
+ function to identify an appropriate source or sink of @i{characters} or 
+ @i{bytes} for that operation.
+ A @i{character}
+- at IGindex{character}
++ at IGindex character
+  @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+  is a source or sink of @i{characters}.
+ A @i{binary}
+- at IGindex{binary}
++ at IGindex binary
+  @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+  is a source or sink of @i{bytes}.
  
-@@ -1475,7 +1474,7 @@ both @t{picture-class} and @t{character-
- When a @i{generic function} is called with particular arguments, it must
- determine the code to execute.  This code is called the 
- @i{effective method}
-- at IGindex{effective method}
-+ at IGindex effective method
-  for those @i{arguments}.
- The @i{effective method} is a 
- combination of the @i{applicable methods} in the @i{generic function}
-@@ -1573,7 +1572,7 @@ That method can call the next most speci
- method by using the @i{function} @b{call-next-method}.  The method that
- @b{call-next-method} will call is referred to as the 
- @i{next method}
-- at IGindex{next method}
-+ at IGindex next method
- .  The predicate @b{next-method-p} tests whether a next
- method exists.  If @b{call-next-method} is called and there is no
- next most specific method, the generic function @b{no-next-method}
-@@ -1608,7 +1607,7 @@ the @b{define-method-combination} @i{mac
- @node Standard Method Combination, Declarative Method Combination, Applying method combination to the sorted list of applicable methods, Method Selection and Combination
- @subsubsection Standard Method Combination
+ Some operations may be performed on any kind of @i{stream};
+@@ -79,14 +79,14 @@ and @b{read-byte} is only defined for @i
  
-- at IRindex{standard}
-+ at IRindex standard
+ A @i{stream}, whether a @i{character} @i{stream} or a @i{binary} @i{stream},
+ can be an @i{input}
+- at IGindex{input}
++ at IGindex input
+  @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+  (source of data),
+        an @i{output}
+- at IGindex{output}
++ at IGindex output
+  @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+  (sink for data),
+        both, 
+     or (@i{e.g.}, when ``@t{:direction :probe}'' is given to @b{open}) neither.
+@@ -129,9 +129,9 @@ Figure 21--3 shows @i{operators} relatin
  
- Standard method combination is supported by the @i{class} @b{standard-generic-function}.
- It is used if no other type of method
-@@ -1757,25 +1756,25 @@ other operators that specify generic fun
+ A @i{stream} that is both an @i{input} @i{stream} and an @i{output} @i{stream}
+ is called a @i{bidirectional}
+- at IGindex{bidirectional}
++ at IGindex bidirectional
+  @i{stream}
+- at IGindex{stream}
++ at IGindex stream
+ .
+ See the @i{functions} @b{input-stream-p} and @b{output-stream-p}.
  
- The names of the built-in  method combination types are listed in Figure 7--3.
+@@ -155,9 +155,9 @@ shows a list of @i{operators} that relat
+ @subsubsection Open and Closed Streams
  
-- at IRindex{+}
-+ at IRindex +
+ @i{Streams} are either @i{open}
+- at IGindex{open}
++ at IGindex open
+  or @i{closed}
+- at IGindex{closed}
++ at IGindex closed
+ .  
  
-- at IRindex{and}
-+ at IRindex and
+ Except as explicitly specified otherwise,
+@@ -182,7 +182,7 @@ and for that same @i{stream} once it has
+ @subsubsection Interactive Streams
  
-- at IRindex{append}
-+ at IRindex append
+ An @i{interactive stream}
+- at IGindex{interactive stream}
++ at IGindex interactive stream
+  is one on which it makes sense to perform
+ interactive querying.
  
-- at IRindex{list}
-+ at IRindex list
+@@ -223,7 +223,7 @@ so interactive queries to such streams m
+ @subsubsection File Streams
  
-- at IRindex{max}
-+ at IRindex max
+ Some @i{streams}, called @i{file streams}
+- at IGindex{file stream}
++ at IGindex file stream
+ , provide access to @i{files}.
+ An @i{object} of @i{class} @b{file-stream} is used to represent a @i{file stream}.
  
-- at IRindex{min}
-+ at IRindex min
+@@ -276,7 +276,7 @@ about these subclasses.
  
-- at IRindex{nconc}
-+ at IRindex nconc
+ @i{Variables} whose @i{values} must be @i{streams} are sometimes called 
+ @i{stream variables}
+- at IGindex{stream variable}
++ at IGindex stream variable
+ .
  
-- at IRindex{or}
-+ at IRindex or
+ Certain @i{stream variables} are defined by this specification 
+--- ./info/chap-22.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-22.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -79,7 +79,7 @@ program-readable.
  
-- at IRindex{progn}
-+ at IRindex progn
+ A number of option variables, called
+ @i{printer control variables}
+- at IGindex{printer control variable}
++ at IGindex printer control variable
+ ,
+ are provided to permit control of individual aspects of the 
+ printed representation of @i{objects}.
+@@ -133,7 +133,7 @@ is that the @i{Lisp printer} behaves as
+ For notational convenience, we say that 
+ if the value of either @b{*print-readably*} or @b{*print-escape*} is @i{true}, 
+ then @i{printer escaping}
+- at IGindex{printer escaping}
++ at IGindex printer escaping
+  is ``enabled'';
+ and we say that
+ if the values of both @b{*print-readably*} and @b{*print-escape*} are @i{false}, 
+@@ -205,7 +205,7 @@ see @ref{Syntax of an Integer}.
+ @node Printing Ratios, Printing Floats, Printing Integers, Default Print-Object Methods
+ @subsubsection Printing Ratios
  
-- at IRindex{standard}
-+ at IRindex standard
+- at IRindex{ratio}
++ at IRindex ratio
  
- @format
- @group
-@@ -3797,29 +3796,26 @@ of an accessor for the @i{instance}.
+ @i{Ratios} are printed as follows:
+ the absolute value of the numerator is printed, as for an @i{integer};
+@@ -224,7 +224,7 @@ see @ref{Syntax of a Ratio}.
+ @node Printing Floats, Printing Complexes, Printing Ratios, Default Print-Object Methods
+ @subsubsection Printing Floats
  
- A @b{with-accessors} expression of the form:
+- at IRindex{float}
++ at IRindex float
  
-- at center 
- @example
+ If the magnitude of the @i{float} is either zero or between 10^@r{-3} (inclusive)
+ and 10^7 (exclusive), it is printed as the integer part of the number,
+@@ -263,7 +263,7 @@ see @ref{Syntax of a Float}.
+ @node Printing Complexes, Note about Printing Numbers, Printing Floats, Default Print-Object Methods
+ @subsubsection Printing Complexes
  
-- at w{@t{(with-accessors} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
-+ at center @w{@t{(with-accessors} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
- @end example
+- at IRindex{complex}
++ at IRindex complex
  
- @noindent
- expands into the equivalent of
+ A @i{complex} is printed as @t{#C}, an open parenthesis,
+ the printed representation of its real part, a space,
+@@ -929,7 +929,7 @@ see @ref{Sharpsign Dot}.
+ @subsection Pretty Printer Concepts
  
-- at center 
- @example
+ The facilities provided by the @i{pretty printer}
+- at IGindex{pretty printer}
++ at IGindex pretty printer
+  permit
+ @i{programs} to redefine the way in which @i{code} is displayed, 
+ and allow the full power of @i{pretty printing} to be applied 
+@@ -971,13 +971,13 @@ The actions of the @i{pretty printer} wh
+ large to fit in the space available can be precisely controlled.
+ Three concepts underlie 
+ the way these operations work--- at i{logical blocks}
+- at IGindex{logical blocks}
++ at IGindex logical blocks
+ ,
+ 			        @i{conditional newlines}
+- at IGindex{conditional newlines}
++ at IGindex conditional newlines
+ ,
+ 			    and @i{sections}
+- at IGindex{sections}
++ at IGindex sections
+ .
+ Before proceeding further, it is important to define these terms.
  
-- at w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
-+ at center @w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
- @w{ @t{(symbol-macrolet (}@r{Q}_1... @r{Q}_n at t{)} @r{form}_1 ... at r{form}_k at t{))}}@*
- @end example
+@@ -1080,7 +1080,7 @@ The @b{formatter} @i{macro} provides the
+ to do that same printing but without losing the textual compactness of @i{format strings}.
  
- @noindent
- where @r{Q}_i is 
+ A @i{format control}
+- at IGindex{format control}
++ at IGindex format control
+  is either a @i{format string} or a @i{function}
+ that was returned by the the @b{formatter} @i{macro}.
  
-- at center
- @example
-- at t{(}@r{variable-name}_i () 
-- at t{(@r{accessor-name}_i in))}
-+ at center @t{(}@r{variable-name}_i () 
-+ at center @t{(@r{accessor-name}_i in))}
- @end example
+@@ -1088,7 +1088,7 @@ that was returned by the the @b{formatte
+ @subsubsection Pretty Print Dispatch Tables
  
+ A @i{pprint dispatch table}
+- at IGindex{pprint dispatch table}
++ at IGindex pprint dispatch table
+  is a mapping from keys to pairs of values.  
+ Each key is a @i{type specifier}.  
+ The values associated with a key are
+@@ -1099,7 +1099,7 @@ of keys being tested by @b{equal}.
  
-@@ -3919,39 +3915,35 @@ of a @i{slot} in the @i{instance}.
+ When @b{*print-pretty*} is @i{true}, 
+ the @i{current pprint dispatch table}
+- at IGindex{current pprint dispatch table}
++ at IGindex current pprint dispatch table
+  (in @b{*print-pprint-dispatch*})
+ controls how @i{objects} are printed.
+ The information in this table takes precedence over
+@@ -1170,7 +1170,7 @@ If the line width available is greater t
+ output appears on one line.  If the line width available is reduced to @t{25},
+ a line break is inserted at the 
+ linear-style conditional newline
+- at ITindex{linear-style conditional newline}
++ at ITindex linear-style conditional newline
  
- A @b{with-slots} expression of the form:
+ before the
+ @i{expression} @t{(* x y)}, producing the output shown.  The
+@@ -1197,7 +1197,7 @@ If @b{*print-miser-width*} were greater
+ output above would have been as follows, because all indentation changes 
+ are ignored in miser mode and line breaks are inserted at 
+ miser-style conditional newlines.
+- at ITindex{miser-style conditional newline}
++ at ITindex miser-style conditional newline
  
-- at center 
  @example
+  (DEFUN
+@@ -1234,7 +1234,7 @@ be produced no matter whether the list c
+ two elements, or (being malformed) has more than two elements.)   
+ A space and a 
+ fill-style conditional newline
+- at ITindex{fill-style conditional newline}
++ at ITindex fill-style conditional newline
  
-- at w{@t{(with-slots} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
-+ at center @w{@t{(with-slots} (@r{slot-entry}_1 ... at r{slot-entry}_n) @i{instance-form} @r{form}_1 ... at r{form}_k)}@*
- @end example
+ are placed after
+ each pair except the last.  The loop at the end of the topmost
+@@ -3698,7 +3698,7 @@ This @i{parameter} is treated as follows
+ @item @t{:linear}  
+ This specifies a
+ ``linear-style'' @i{conditional newline}.
+- at ITindex{linear-style conditional newline}
++ at ITindex linear-style conditional newline
  
- @noindent
- expands into the equivalent of
+ A line break is inserted 
+ if and only if the immediately containing @i{section}
+@@ -3710,7 +3710,7 @@ or at none of them.
+ @item @t{:miser}  
+ This specifies a 
+ ``miser-style'' @i{conditional newline}.
+- at ITindex{miser-style conditional newline}
++ at ITindex miser-style conditional newline
  
-- at center 
- @example
+ A line break is inserted
+ if and only if the immediately containing @i{section}
+@@ -3727,7 +3727,7 @@ is less than or equal to
+ @item @t{:fill}  
+ This specifies a
+ ``fill-style'' @i{conditional newline}.
+- at ITindex{fill-style conditional newline}
++ at ITindex fill-style conditional newline
+ 
+ A line break is inserted if and only if
+ either (a) the following @i{section} cannot be printed 
+@@ -3746,7 +3746,7 @@ fill-style conditional newlines act like
+ @item @t{:mandatory}  
+ This specifies a
+ ``mandatory-style'' @i{conditional newline}.
+- at ITindex{mandatory-style conditional newline}
++ at ITindex mandatory-style conditional newline
+ 
+ A line break is always inserted.
+ This implies that  none of the containing @i{sections}
+@@ -4511,7 +4511,7 @@ The initial @i{value} of @b{*print-radix
+ @b{*print-base*} and @b{*print-radix*} control the printing
+ of @i{rationals}.
+ The @i{value} of @b{*print-base*} is called the @i{current output base}
+- at IGindex{current output base}
++ at IGindex current output base
+ .
  
-- at w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
-+ at center @w{@t{(}@t{let ((}in @i{instance-form}@t{))}}@*
- @w{ @t{(symbol-macrolet (}@r{Q}_1... @r{Q}_n at t{)} @r{form}_1 ... at r{form}_k at t{))}}@*
- @end example
+ The @i{value} of @b{*print-base*} is the @i{radix} in which the printer 
+--- ./info/chap-23.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-23.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -1174,7 +1174,7 @@ Controls the interpretation of tokens by
+ @i{integers} or @i{ratios}.  
  
- @noindent
- where @r{Q}_i is 
+ The @i{value} of @b{*read-base*}, called the @i{current input base}
+- at IGindex{current input base}
++ at IGindex current input base
+ ,
+ is the radix in which @i{integers} and
+ @i{ratios} are to be read by the @i{Lisp reader}.
+--- ./info/chap-24.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-24.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -24,20 +24,20 @@
+ To @b{load} a @i{file} is to treat its contents as @i{code}
+ and @i{execute} that @i{code}.
+ The @i{file} may contain @i{source code}
+- at IGindex{source code}
++ at IGindex source code
+  or @i{compiled code}
+- at IGindex{compiled code}
++ at IGindex compiled code
+ .
  
-- at center 
- @example
-- at t{(}@r{slot-entry}_i () 
-- at t{(slot-value }in '@r{slot-entry}_i at t{))}
-+ at center @t{(}@r{slot-entry}_i () 
-+ at center @t{(slot-value }in '@r{slot-entry}_i at t{))}
- @end example
+ A @i{file} containing @i{source code} is called a @i{source file}
+- at IGindex{source file}
++ at IGindex source file
+ .
+ @i{Loading} a @i{source file} is accomplished essentially 
+ by sequentially @i{reading}_2 the @i{forms} in the file,
+ @i{evaluating} each immediately after it is @i{read}.
  
- @noindent
- if @r{slot-entry}_i is a @i{symbol}
- and is
+ A @i{file} containing @i{compiled code} is called a @i{compiled file}
+- at IGindex{compiled file}
++ at IGindex compiled file
+ .
+ @i{Loading} a @i{compiled file} is similar to @i{loading} a @i{source file},
+ except that the @i{file} does not contain text but rather an
+@@ -53,7 +53,7 @@ is @i{implementation-dependent}.
+ @subsection Features
  
-- at center 
- @example
-- at t{(}@r{variable-name}_i () 
-- at t{(slot-value }in '@r{slot-name}_i at t{))}
-+ at center @t{(}@r{variable-name}_i () 
-+ at center @t{(slot-value }in '@r{slot-name}_i at t{))}
- @end example
+ A @i{feature}
+- at IGindex{feature}
++ at IGindex feature
+  is an aspect or attribute
+      of @r{Common Lisp}, 
+      of the @i{implementation},
+@@ -61,12 +61,12 @@ A @i{feature}
+ A @i{feature} is identified by a @i{symbol}.
  
+ A @i{feature} is said to be @i{present}
+- at IGindex{present}
++ at IGindex present
+  in a @i{Lisp image}
+ if and only if the @i{symbol} naming it is an @i{element} of the
+ @i{list} held by the @i{variable} @b{*features*}, 
+ which is called the @i{features list}
+- at IGindex{features list}
++ at IGindex features list
+ .
  
-@@ -3959,9 +3951,8 @@ and is
- if @r{slot-entry}_i
- is of the form 
+ @menu
+@@ -78,7 +78,7 @@ which is called the @i{features list}
+ @subsubsection Feature Expressions
  
-- at center 
- @example
-- at t{(}@r{variable-name}_i 
-+ at center @t{(}@r{variable-name}_i 
- @r{slot-name}_i at t{)}
- @end example
+ Boolean combinations of @i{features}, called @i{feature expressions}
+- at IGindex{feature expression}
++ at IGindex feature expression
+ ,
+ are used by the @t{#+} and @t{#-} @i{reader macros} in order to
+ direct conditional @i{reading} of @i{expressions} by the @i{Lisp reader}.
+--- ./info/chap-25.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-25.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -141,7 +141,7 @@ Figure 25--4 shows @i{defined names} rel
+ @subsubsection Decoded Time
  
---- ./info/chap-12.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-12.texi	2013-05-13 10:11:19.776813128 -0600
-@@ -4823,9 +4823,9 @@ in a given @i{place}.
- The order of evaluation, when an @b{ldb} form is supplied
- to @b{setf}, is exactly left-to-right.
+ A @i{decoded time}
+- at IGindex{decoded time}
++ at IGindex decoded time
+  is an ordered series of nine values that, taken together,
+ represent a point in calendar time (ignoring @i{leap seconds}):
  
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+@@ -206,7 +206,7 @@ Figure 25--5 shows @i{defined names} rel
+ @subsubsection Universal Time
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+ @i{Universal time}
+- at IGindex{universal time}
++ at IGindex universal time
+  is an @i{absolute} @i{time} represented as a
+ single non-negative @i{integer}---the number of seconds since
+ midnight, January 1, 1900 GMT (ignoring @i{leap seconds}).
+@@ -237,7 +237,7 @@ times before the base time of midnight,
+ @subsubsection Internal Time
  
- The effect is to perform a @b{dpb} operation
- and then store the result back into the @i{place}.
+ @i{Internal time}
+- at IGindex{internal time}
++ at IGindex internal time
+  represents time as a single @i{integer},
+ in terms of an @i{implementation-dependent} unit called an @i{internal time unit}.
+ Relative time is measured as a number of these units.
 --- ./info/chap-26.texi.orig	2002-10-18 04:31:14.000000000 -0600
-+++ ./info/chap-26.texi	2013-05-13 10:11:19.780813108 -0600
++++ ./info/chap-26.texi	2013-05-13 10:11:19.000000000 -0600
 @@ -122,7 +122,7 @@ transitive verb
  @subheading @b{Non-alphabetic}
  @table @asis
@@ -8008,29 +8023,117 @@
  @item @b{yield}
   @i{v.t.} (@i{values})
    to produce the @i{values} as the result of @i{evaluation}.
---- ./info/chap-6.texi.orig	2003-11-24 09:31:36.000000000 -0700
-+++ ./info/chap-6.texi	2013-05-13 10:11:19.781813103 -0600
-@@ -373,9 +373,9 @@ For more information, see @ref{Miscellan
- @node Order of Execution, Destructuring, Summary of Miscellaneous Clauses, Overview of the Loop Facility
- @subsubsection Order of Execution
+--- ./info/chap-a.texi.orig	2002-10-18 04:31:14.000000000 -0600
++++ ./info/chap-a.texi	2013-05-13 10:11:19.000000000 -0600
+@@ -47,7 +47,7 @@ For a list of deprecated features, see @
+ @subsection Removed Types
  
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+ The @i{type} @t{string-char}
+- at ICindex{string-char}
++ at ICindex string-char
+  was removed.
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+ @node Removed Operators, Removed Argument Conventions, Removed Types, Removed Language Features
+@@ -56,30 +56,30 @@ The @i{type} @t{string-char}
+ The functions
  
-   With the exceptions listed below, clauses are executed in the loop body
-   in the order in which they appear in the source.  Execution is repeated 
-@@ -688,9 +688,9 @@ For example, either ``@t{from x by y}''
- However, because left-to-right order of evaluation is preserved,
- the effects will be different in the case of side effects.
+ @t{int-char}
+- at ICindex{int-char}
++ at ICindex int-char
+ ,
+ @t{char-bits}
+- at ICindex{char-bits}
++ at ICindex char-bits
+ ,
+ @t{char-font}
+- at ICindex{char-font}
++ at ICindex char-font
+ ,
+ @t{make-char}
+- at ICindex{make-char}
++ at ICindex make-char
+ ,
+ @t{char-bit}
+- at ICindex{char-bit}
++ at ICindex char-bit
+ ,
+ @t{set-char-bit}
+- at ICindex{set-char-bit}
++ at ICindex set-char-bit
+ ,
+ @t{string-char-p}
+- at ICindex{string-char-p}
++ at ICindex string-char-p
+ ,
  
-- at ITindex{order of evaluation}
-+ at ITindex order of evaluation
+ and
+ @t{commonp}
+- at ICindex{commonp}
++ at ICindex commonp
  
-- at ITindex{evaluation order}
-+ at ITindex evaluation order
+ were removed.
  
- Consider:
+@@ -89,10 +89,10 @@ The @i{special operator} @t{compiler-let
+ @subsection Removed Argument Conventions
+ 
+ The @i{font} argument to @b{digit-char}
+- at IRindex{digit-char}
++ at IRindex digit-char
+  was removed.
+ The @i{bits} and @i{font} arguments to @b{code-char}
+- at IRindex{code-char}
++ at IRindex code-char
+ 
+ were removed.
+ 
+@@ -102,26 +102,26 @@ were removed.
+ The variables
+ 
+ @t{char-font-limit}
+- at ICindex{char-font-limit}
++ at ICindex char-font-limit
+ ,
+ @t{char-bits-limit}
+- at ICindex{char-bits-limit}
++ at ICindex char-bits-limit
+ ,
+ @t{char-control-bit}
+- at ICindex{char-control-bit}
++ at ICindex char-control-bit
+ ,
+ @t{char-meta-bit}
+- at ICindex{char-meta-bit}
++ at ICindex char-meta-bit
+ ,
+ @t{char-super-bit}
+- at ICindex{char-super-bit}
++ at ICindex char-super-bit
+ ,
+ @t{char-hyper-bit}
+- at ICindex{char-hyper-bit}
++ at ICindex char-hyper-bit
+ ,
+ 
+ and @t{*break-on-warnings*}
+- at ICindex{*break-on-warnings*}
++ at ICindex *break-on-warnings*
+ 
+ were removed.
+ 
+@@ -135,13 +135,13 @@ The ``@t{#,}'' @i{reader macro} in @i{st
+ 
+ The @i{packages} 
+      @t{LISP}
+- at IPindex{lisp}
++ at IPindex lisp
+ ,
+      @t{USER}
+- at IPindex{user}
++ at IPindex user
+ ,
+  and @t{SYSTEM}
+- at IPindex{system}
++ at IPindex system
  
+ are no longer required.  It is valid for @i{packages} with one or more of these
+ names to be provided by a @i{conforming implementation} as extensions.
diff --git a/gcl-2.6.8-unrandomize.patch b/gcl-2.6.8-unrandomize.patch
index a5eb439..c5d0b08 100644
--- a/gcl-2.6.8-unrandomize.patch
+++ b/gcl-2.6.8-unrandomize.patch
@@ -1,6 +1,6 @@
---- ./configure.in.orig	2013-05-10 08:26:52.000000000 -0600
-+++ ./configure.in	2013-05-10 08:26:52.000000000 -0600
-@@ -1187,9 +1187,11 @@ if test "$HAVE_SBRK" = "1" ; then
+--- configure.in.orig	2013-08-26 14:11:33.000000000 -0600
++++ configure.in	2013-08-26 14:14:39.000000000 -0600
+@@ -1192,9 +1192,11 @@
  
  	AC_MSG_CHECKING([for personality(ADDR_NO_RANDOMIZE) support])
  	AC_RUN_IFELSE([AC_LANG_SOURCE([[
@@ -13,7 +13,7 @@
  		    return 0;}]])],CAN_UNRANDOMIZE_SBRK=1,CAN_UNRANDOMIZE_SBRK=0,CAN_UNRANDOMIZE_SBRK=0)
  
  	if test "$CAN_UNRANDOMIZE_SBRK" != 0 ; then
-@@ -1202,12 +1204,11 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1207,12 +1209,11 @@
  	AC_MSG_CHECKING([that sbrk is (now) non-random])
  	AC_RUN_IFELSE([AC_LANG_SOURCE([[
  		    #include <stdio.h>
@@ -28,7 +28,7 @@
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
  			return 0;}]])],SBRK=`cat conftest1`,SBRK=0,SBRK=0)
-@@ -1216,12 +1217,11 @@ if test "$HAVE_SBRK" = "1" ; then
+@@ -1221,12 +1222,11 @@
  	fi
  	AC_RUN_IFELSE([AC_LANG_SOURCE([[
  		    #include <stdio.h>
@@ -43,7 +43,7 @@
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
  			return 0;}]])],SBRK1=`cat conftest1`,SBRK1=0,SBRK1=0)
-@@ -1263,6 +1263,7 @@ AC_MSG_CHECKING([finding DBEGIN])
+@@ -1268,6 +1268,7 @@
  AC_RUN_IFELSE([AC_LANG_SOURCE([[
  #include <stdio.h>
  #include <stdlib.h>
@@ -51,7 +51,7 @@
  
  void gprof_cleanup() {}
  int
-@@ -1271,9 +1272,7 @@ main(int argc,char * argv[],char *envp[]
+@@ -1276,9 +1277,7 @@
    char *b,*b1;
    FILE *fp;
  
@@ -62,9 +62,9 @@
    b = (void *) malloc(1000);
    fp = fopen("conftest1","w");
  
---- ./configure.orig	2013-05-10 08:32:03.000000000 -0600
-+++ ./configure	2013-05-10 10:19:55.934751565 -0600
-@@ -7086,9 +7086,11 @@ else
+--- configure.orig	2013-08-26 14:12:01.000000000 -0600
++++ configure	2013-08-26 14:14:55.000000000 -0600
+@@ -7116,9 +7116,11 @@
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  
@@ -77,7 +77,7 @@
  		    return 0;}
  _ACEOF
  if ac_fn_c_try_run "$LINENO"; then :
-@@ -7120,12 +7122,11 @@ else
+@@ -7150,12 +7152,11 @@
  /* end confdefs.h.  */
  
  		    #include <stdio.h>
@@ -92,7 +92,7 @@
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
  			return 0;}
-@@ -7149,12 +7150,11 @@ else
+@@ -7179,12 +7180,11 @@
  /* end confdefs.h.  */
  
  		    #include <stdio.h>
@@ -107,7 +107,7 @@
  			if (!(f=fopen("conftest1","w"))) return -1;
  			fprintf(f,"%u",sbrk(0));
  			return 0;}
-@@ -7241,6 +7241,7 @@ else
+@@ -7271,6 +7271,7 @@
  
  #include <stdio.h>
  #include <stdlib.h>
@@ -115,7 +115,7 @@
  
  void gprof_cleanup() {}
  int
-@@ -7249,9 +7250,7 @@ main(int argc,char * argv[],char *envp[]
+@@ -7279,9 +7280,7 @@
    char *b,*b1;
    FILE *fp;
  
@@ -126,9 +126,9 @@
    b = (void *) malloc(1000);
    fp = fopen("conftest1","w");
  
---- ./o/main.c.orig	2010-11-02 15:56:45.000000000 -0600
-+++ ./o/main.c	2012-07-26 09:52:37.251033241 -0600
-@@ -51,6 +51,7 @@ void initialize_process();
+--- o/main.c.orig	2013-07-11 09:28:16.000000000 -0600
++++ o/main.c	2013-08-26 14:14:39.000000000 -0600
+@@ -51,6 +51,7 @@
  #include <signal.h>
  #endif
  #include "page.h"
@@ -136,7 +136,7 @@
  
  bool saving_system ;
  
-@@ -146,11 +147,7 @@ main(int argc, char **argv, char **envp)
+@@ -146,11 +147,7 @@
  #endif	
  	*argv=kcl_self;
  
@@ -149,8 +149,8 @@
  
  #ifdef LD_BIND_NOW
  #include <stdio.h>
---- ./h/unrandomize.h.orig	2010-01-12 07:19:15.000000000 -0700
-+++ ./h/unrandomize.h	2012-07-26 09:52:37.274033201 -0600
+--- h/unrandomize.h.orig	2013-07-11 09:28:16.000000000 -0600
++++ h/unrandomize.h	2013-08-26 14:14:39.000000000 -0600
 @@ -1,39 +1,45 @@
 +#include <stdio.h>
 +#include <stdlib.h>
diff --git a/gcl.spec b/gcl.spec
index 6064eff..22c5cfc 100644
--- a/gcl.spec
+++ b/gcl.spec
@@ -1,32 +1,22 @@
-# The i386 build requires the frame pointer.
-%ifarch %ix86
+# SGC requires the frame pointer.
 %global __global_cflags %__global_cflags -fno-omit-frame-pointer
-%endif
 
 # -fstack-protector leads to segfaults because GCL uses its own conflicting
 # stack protection scheme.
 %global __global_cflags %(printf %%s '%__global_cflags' | sed -r 's/ -fstack-protector(-strong)?( --param=ssp-buffer-size=[[:digit:]]+)?//')
 
-# Prerelease of 2.6.8
-%global alphatag 20130521cvs
-
 Name:           gcl
 Version:        2.6.8
-Release:        0.18.%{alphatag}%{?dist}
+Release:        1%{?dist}
 Summary:        GNU Common Lisp
 
 Group:          Development/Languages
 License:        GPL+ and LGPLv2+
 URL:            http://www.gnu.org/software/gcl/
-# The source for this package was pulled from upstream's CVS repository.  Use
-# the following commands to generate the tarball:
-#   cvs -d:pserver:anonymous at cvs.savannah.gnu.org:/sources/gcl export \
-#     -r Version_2_6_8pre -D 2013-05-22 -d gcl-2.6.8 gcl
-#   tar cvJf gcl-2.6.8.tar.xz gcl-2.6.8
-Source0:        %{name}-%{version}.tar.xz
+Source0:        ftp://ftp.gnu.org/pub/gnu/%{name}/%{name}-%{version}.tar.gz
 Source1:        gcl.el
 # This is some info files that are needed for the DESCRIBE function to do
-# something useful.  These files are present in CVS HEAD (i.e., the upcoming
+# something useful.  These files are present in git HEAD (i.e., the upcoming
 # 2.7.0 release), but are missing in the 2.6 branch.
 Source2:        %{name}-2.6.8-info.tar.xz
 # This patch was last sent upstream on 29 Dec 2008.  It fixes a file descriptor
@@ -91,6 +81,9 @@ Patch15:        %{name}-2.6.8-man.patch
 Patch16:        %{name}-2.6.8-reloc-type.patch
 # This patch is still experimental.  Enable large file support.
 Patch17:        %{name}-2.6.8-largefile.patch
+# This patch was last sesnt upstream on 26 Aug 2013.  It fixes a broken
+# sprintf call in the TCL code.
+Patch18:        %{name}-2.6.8-tcl.patch
 
 BuildRequires:  libXaw-devel
 BuildRequires:  readline-devel
@@ -174,8 +167,8 @@ gcl_exec_t.
 
 
 %prep
-%setup -q
-%setup -q -T -D -a 2
+%setup -q -n %{name}
+%setup -q -n %{name} -T -D -a 2
 %patch0
 %patch1
 %patch2
@@ -194,13 +187,10 @@ gcl_exec_t.
 %patch15
 %patch16
 %patch17
+%patch18
 
-# Don't let the configure script add compiler flags we don't want
-sed -e 's/"-fomit-frame-pointer"/""/' \
-%ifarch %ix86
-    -e 's/-O3/& -fno-omit-frame-pointer/g' \
-%endif
-    -i configure
+# Ensure the frame pointer doesn't get added back
+sed -i 's/"-fomit-frame-pointer"/""/' configure
 
 # Fix a path in the launch script
 sed -i -e 's|/usr/lib/tk|%{_datadir}/tk|' debian/gcl.sh
@@ -300,7 +290,7 @@ rm -f /tmp/gazonk_* /tmp/gcl_*
 
 %post selinux
 /usr/sbin/semodule -i %{_datadir}/selinux/packages/gcl/gcl.pp || :
-/sbin/restorecon -R %{_libdir}/maxima
+test -e %{_libdir}/maxima && /sbin/restorecon -R %{_libdir}/maxima
 
 
 %postun
@@ -350,6 +340,12 @@ fi
 
 
 %changelog
+* Mon Aug 26 2013 Jerry James <loganjerry at gmail.com> - 2.6.8-1
+- Final 2.6.8 release
+- Build with -fno-omit-frame-pointer on all arches; SGC needs it
+- Fix bug in selinux post script
+- Add -tcl patch
+
 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.6.8-0.18.20130521cvs
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
 
@@ -357,7 +353,7 @@ fi
 - Update to 20130521 snapshot for bug fixes
 - Rebase patches
 
-* Fri Mar 22 2013 Jerry James <loganjerry at gmail.com> - 2.6.8-0.16.20130511cvs
+* Mon May 13 2013 Jerry James <loganjerry at gmail.com> - 2.6.8-0.16.20130511cvs
 - Update to 20130511 snapshot for bug fixes
 - Add -largefile patch
 
diff --git a/sources b/sources
index cbc7096..a0742ca 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-7cd4492c2df2d1746b03dd0bb9c4a557  gcl-2.6.8.tar.xz
+780a782648b3c9dd479f707768c7c2ea  gcl-2.6.8.tar.gz
 b965d4ea561a9c3e019c65be69fcfb1e  gcl-2.6.8-info.tar.xz


More information about the scm-commits mailing list