0.8.0.60:
[sbcl.git] / src / pcl / early-low.lisp
index 5d436da..abca534 100644 (file)
@@ -43,7 +43,6 @@
 ;;;     #+SB-FLUID `(FIND-PACKAGE ,NAME))
 ;;; and use that to replace all three variables.)
 (defvar *pcl-package*               (find-package "SB-PCL"))
-(defvar *slot-accessor-name-package* (find-package "SB-SLOT-ACCESSOR-NAME"))
 
 ;;; This excludes structure types created with the :TYPE option to
 ;;; DEFSTRUCT. It also doesn't try to deal with types created by
 ;;; it needs a more mnemonic name. -- WHN 19991204
 (defun structure-type-p (type)
   (and (symbolp type)
-       (let ((class  (cl:find-class type nil)))
-        (and class
-             (typep (sb-kernel:layout-info (sb-kernel:class-layout class))
-                    'sb-kernel:defstruct-description)))))
+       (not (condition-type-p type))
+       (let ((classoid (find-classoid type nil)))
+        (and classoid
+             (typep (layout-info
+                     (classoid-layout classoid))
+                    'defstruct-description)))))
+
+(defun condition-type-p (type)
+  (and (symbolp type)
+       (condition-classoid-p (find-classoid type nil))))
 \f
 (/show "finished with early-low.lisp")