X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Finit.lisp;h=a73f35326cd4027de5b8134971bed38175dabc3c;hb=2dfaffe8bdce30dac9b5baa4d2645d074a176b4f;hp=27342bd9e0e303b989c0d97d639717c44b3b0b93;hpb=ab7aedfb1e4c0245814beb998e74e099b71092a6;p=sbcl.git diff --git a/src/pcl/init.lisp b/src/pcl/init.lisp index 27342bd..a73f353 100644 --- a/src/pcl/init.lisp +++ b/src/pcl/init.lisp @@ -29,6 +29,9 @@ (apply #'make-instance (find-class class) initargs)) (defmethod make-instance ((class class) &rest initargs) + (let ((instance-or-nil (maybe-call-ctor class initargs))) + (when instance-or-nil + (return-from make-instance instance-or-nil))) (unless (class-finalized-p class) (finalize-inheritance class)) (let ((class-default-initargs (class-default-initargs class))) (when class-default-initargs