X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fpcl%2Fctor.lisp;h=9ae7add091bf9f1c8c95c6b05814159b74364078;hb=a4cffc065c83d046fce193919bf6d4e53f181455;hp=7a981aa2304d90c13fd5c471c5a6ba8be285d53f;hpb=6d0c182ac7069b549c80feaa024caed176c4b35f;p=sbcl.git diff --git a/src/pcl/ctor.lisp b/src/pcl/ctor.lisp index 7a981aa..9ae7add 100644 --- a/src/pcl/ctor.lisp +++ b/src/pcl/ctor.lisp @@ -109,7 +109,7 @@ (!defstruct-with-alternate-metaclass ctor :slot-names (function-name class-name class initargs) :boa-constructor %make-ctor - :superclass-name pcl-funcallable-instance + :superclass-name function :metaclass-name random-pcl-classoid :metaclass-constructor make-random-pcl-classoid :dd-type funcallable-structure @@ -356,7 +356,7 @@ (defun optimizing-generator (ctor ii-methods si-methods) (multiple-value-bind (locations names body before-method-p) (fake-initialization-emf ctor ii-methods si-methods) - (values + (values `(lambda ,(make-ctor-parameter-list ctor) (declare #.*optimize-speed*) ,(wrap-in-allocate-forms ctor body before-method-p)) @@ -596,7 +596,7 @@ ,(case type (constant `',(eval value)) ((param var) `,value) - (initfn `(funcall ,value)))) + (initfn `(funcall ,value)))) into class-init-forms finally (return (values names locations class-init-forms))) (multiple-value-bind (vars bindings) @@ -604,8 +604,8 @@ collect var into vars collect `(,var (funcall ,initfn)) into bindings finally (return (values vars bindings))) - (values locations names - bindings vars + (values locations names + bindings vars (nreverse defaulting-initargs) `(,@(delete nil instance-init-forms) ,@class-init-forms))))))))