0.7.12.10:
[sbcl.git] / src / pcl / fast-init.lisp
index fbd507d..88219f5 100644 (file)
@@ -43,7 +43,7 @@
 
 (defun expand-make-instance-form (form)
   (let ((class (cadr form)) (initargs (cddr form))
-       (keys nil)(allow-other-keys-p nil) key value)
+       (keys nil) (allow-other-keys-p nil) key value)
     (when (and (constant-symbol-p class)
               (let ((initargs-tail initargs))
                 (loop (when (null initargs-tail) (return t))
@@ -64,7 +64,7 @@
          ;;   1. Don't worry, I know what I'm doing.
          ;;   2. You and what army?
          ;;   3. If you were as smart as you think you are, you
-         ;;      wouldn't be a copy.
+         ;;      wouldn't be a cop.
          ;; This is case #1.:-) Even if SYM hasn't been defined yet,
          ;; it must be an implementation function, or we we wouldn't
          ;; have expanded into it. So declare SYM as defined, so that
                (*print-case* :upcase)
                (*print-pretty* nil))
            (intern (format nil
-                           "MAKE-INSTANCE ~S ~S ~S"
-                           class-name
+                           "MAKE-INSTANCE ~A::~A ~S ~S"
+                           (package-name (symbol-package class-name))
+                           (symbol-name class-name)
                            keys
                            allow-other-keys-p))))))))
 
                                      initialize-instance-methods)))))
       (lambda (class1 initargs)
        (if (not (eq wrapper (class-wrapper class)))
-           (let* ((info (initialize-info class1 initargs))
+           (let* ((info (initialize-info (coerce-to-class class1) initargs))
                   (fn (initialize-info-make-instance-function info)))
              (declare (type function fn))
              (funcall fn class1 initargs))
             (list wrapper *the-wrapper-of-t*))))
       (lambda (class1 initargs)
        (if (not (eq wrapper (class-wrapper class)))
-           (let* ((info (initialize-info class1 initargs))
+           (let* ((info (initialize-info (coerce-to-class class1) initargs))
                   (fn (initialize-info-make-instance-function info)))
              (declare (type function fn))
              (funcall fn class1 initargs))