0.9.2.40:
[sbcl.git] / src / pcl / init.lisp
index ee7e2e3..40a922a 100644 (file)
@@ -52,9 +52,9 @@
 (defmethod default-initargs ((class slot-class)
                             supplied-initargs
                             class-default-initargs)
-  (loop for (key fn) in class-default-initargs
+  (loop for (key nil fun) in class-default-initargs
         when (eq (getf supplied-initargs key '.not-there.) '.not-there.)
-         append (list key (funcall fn)) into default-initargs
+         append (list key (funcall fun)) into default-initargs
         finally
          (return (append supplied-initargs default-initargs))))
 
                       (let ((initfn (slot-definition-initfunction slotd)))
                         (when initfn
                           (funcall initfn)))))
-              (unless (or (slot-boundp-using-class class instance slotd)
-                          (null (slot-definition-initfunction slotd)))
+              (unless (or (null (slot-definition-initfunction slotd))
+                          (slot-boundp-using-class class instance slotd))
                 (setf (slot-value-using-class class instance slotd)
                       (funcall (slot-definition-initfunction slotd)))))))
     (let* ((class (class-of instance))