0.6.11.24:
[sbcl.git] / src / code / late-extensions.lisp
index 6719abf..4c67532 100644 (file)
@@ -7,10 +7,7 @@
 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
 ;;;; files for more information.
 
-(in-package "SB!EXT")
-
-(file-comment
-  "$Header$")
+(in-package "SB!IMPL")
 
 (defun featurep (x)
   #!+sb-doc
        (error "unknown operator in feature expression: ~S." x)))
     (not (null (memq x *features*)))))
 
-;;; KLUDGE: This is a wrapper around stale code for working with floating point
-;;; infinities. I believe that I will eventually eliminate floating point
-;;; infinities from the code, since they're a pain to cross-compile, since they
-;;; significantly increase the number of conditions which need to be tested in
-;;; numeric functions, and since the benefits which they provide (which are
-;;; admittedly significant) are unfortunately not portable. I haven't actually
-;;; done the dirty deed yet, though, and until then, I've wrapped various
-;;; infinity-returning forms in this macro. -- WHN 1999
-(defmacro infinite (x)
-  (declare (ignorable x))
-  #!-sb-infinities '(error 'floating-point-overflow)
-  #!+sb-infinities x)
-
 ;;; Given a list of keyword substitutions `(,OLD ,NEW), and a
-;;; keyword-argument-list-style list of alternating keywords and arbitrary
-;;; values, return a new keyword-argument-list-style list with all
-;;; substitutions applied to it.
+;;; &KEY-argument-list-style list of alternating keywords and
+;;; arbitrary values, return a new &KEY-argument-list-style list with
+;;; all substitutions applied to it.
 ;;;
-;;; Note: If efficiency mattered, we could do less consing. (But if efficiency
-;;; mattered, why would we be using keyword arguments at all, much less
-;;; renaming keyword arguments?)
+;;; Note: If efficiency mattered, we could do less consing. (But if
+;;; efficiency mattered, why would we be using &KEY arguments at
+;;; all, much less renaming &KEY arguments?)
 ;;;
 ;;; KLUDGE: It would probably be good to get rid of this. -- WHN 19991201
-(defun rename-keyword-args (rename-list keyword-args)
-  (declare (type list rename-list keyword-args))
+(defun rename-key-args (rename-list key-args)
+  (declare (type list rename-list key-args))
   ;; Walk through RENAME-LIST modifying RESULT as per each element in
   ;; RENAME-LIST.
-  (do ((result (copy-list keyword-args))) ; may be modified below
+  (do ((result (copy-list key-args))) ; may be modified below
       ((null rename-list) result)
     (destructuring-bind (old new) (pop rename-list)
-      (declare (type keyword old new))
-      ;; Walk through RESULT renaming any OLD keyword argument to NEW.
+      ;; ANSI says &KEY arg names aren't necessarily KEYWORDs.
+      (declare (type symbol old new))
+      ;; Walk through RESULT renaming any OLD key argument to NEW.
       (do ((in-result result (cddr in-result)))
          ((null in-result))
        (declare (type list in-result))
@@ -85,7 +70,7 @@
   ;; workaround for broken READ-SEQUENCE
   #+no-ansi-read-sequence
   (progn
-    (assert (<= start end))
+    (aver (<= start end))
     (let ((etype (stream-element-type stream)))
     (cond ((equal etype '(unsigned-byte 8))
           (do ((i start (1+ i)))