0.8.1.14:
[sbcl.git] / src / code / symbol.lisp
index dadd1a0..e1143df 100644 (file)
   symbol)
 
 ;;; Return the built-in hash value for SYMBOL.
   symbol)
 
 ;;; Return the built-in hash value for SYMBOL.
-#!+(or x86 mips) ;; only backends for which a SYMBOL-HASH vop exists
+
+;;; only backends for which a SYMBOL-HASH vop exists.  In the past,
+;;; when the MIPS backend supported (or nearly did) a generational
+;;; (non-conservative) garbage collector, this read (OR X86 MIPS).
+;;; Having excised the vestigial support for GENGC, this now only
+;;; applies for the x86 port, but if someone were to rework the GENGC
+;;; support, this might change again.  -- CSR, 2002-08-26
+#!+x86 
 (defun symbol-hash (symbol)
   (symbol-hash symbol))
 
 ;;; Compute the hash value for SYMBOL.
 (defun symbol-hash (symbol)
   (symbol-hash symbol))
 
 ;;; Compute the hash value for SYMBOL.
-#!-(or x86 mips)
+#!-x86
 (defun symbol-hash (symbol)
   (%sxhash-simple-string (symbol-name symbol)))
 
 (defun symbol-hash (symbol)
   (%sxhash-simple-string (symbol-name symbol)))
 
   (do ((plist place (cddr plist)))
       ((null plist) default)
     (cond ((atom (cdr plist))
   (do ((plist place (cddr plist)))
       ((null plist) default)
     (cond ((atom (cdr plist))
-          (error "~S is a malformed property list."
-                 place))
+          (error 'simple-type-error
+                 :format-control "malformed property list: ~S."
+                 :format-arguments (list place)
+                 :datum (cdr plist)
+                 :expected-type 'cons))
          ((eq (car plist) indicator)
           (return (cadr plist))))))
 
          ((eq (car plist) indicator)
           (return (cadr plist))))))
 
   (do ((plist place (cddr plist)))
       ((null plist) (values nil nil nil))
     (cond ((atom (cdr plist))
   (do ((plist place (cddr plist)))
       ((null plist) (values nil nil nil))
     (cond ((atom (cdr plist))
-          (error "~S is a malformed proprty list."
-                 place))
+          (error 'simple-type-error
+                 :format-control "malformed property list: ~S."
+                 :format-arguments (list place)
+                 :datum (cdr plist)
+                 :expected-type 'cons))
          ((memq (car plist) indicator-list)
           (return (values (car plist) (cadr plist) plist))))))
 
          ((memq (car plist) indicator-list)
           (return (values (car plist) (cadr plist) plist))))))