;;; FIXME: Having each of these error handlers be a full, named function
;;; seems to contribute a noticeable amount of bloat and little value.
;;; Perhaps we could just make a single error-handling function with a
-;;; big CASE statement inside it?
+;;; big CASE statement inside it? Or at least implement the error handling
+;;; functions as closures instead of DEFUNs?
(eval-when (:compile-toplevel :execute)
(def!macro define-internal-errors (&rest errors)
- (let ((info (mapcar #'(lambda (x)
- (if x
+ (let ((info (mapcar (lambda (x)
+ (if x
(cons (symbolicate (first x) "-ERROR")
(second x))
'(nil . "unused")))
(define-internal-errors
(unknown
"unknown system lossage")
- (object-not-function
+ (object-not-fun
"Object is not of type FUNCTION.")
(object-not-list
"Object is not of type LIST.")
"Object is not of type SIMPLE-VECTOR.")
(object-not-fixnum
"Object is not of type FIXNUM.")
- (object-not-function-or-symbol
- "Object is not of type FUNCTION or SYMBOL.")
(object-not-vector
"Object is not of type VECTOR.")
(object-not-string
;; FIXME: Isn't this used for calls to unbound (SETF FOO) too? If so, revise
;; the name.
"An attempt was made to use an undefined FDEFINITION.")
- (object-not-coerceable-to-function
+ (object-not-coerceable-to-fun
"Object is not coerceable to type FUNCTION.")
(invalid-argument-count
"invalid argument count")
"division by zero")
(object-not-type
"Object is of the wrong type.")
- (odd-keyword-arguments
- "odd number of keyword arguments")
- (unknown-keyword-argument
- "unknown keyword")
+ (odd-key-arguments
+ "odd number of &KEY arguments")
+ (unknown-key-argument
+ "unknown &KEY argument")
nil
nil
(invalid-array-index
"Object is not a INSTANCE.")
(object-not-base-char
"Object is not of type BASE-CHAR.")
- (nil-function-returned
+ (nil-fun-returned
"A function with declared result type NIL returned.")
(layout-invalid
- "invalid layout (indicates obsolete instance)"))
+ "Object layout is invalid. (indicates obsolete instance)")
+ (object-not-complex-vector
+ "Object is not a complex (non-SIMPLE-ARRAY) vector."))