X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fclos.impure-cload.lisp;fp=tests%2Fclos.impure-cload.lisp;h=f0a18296f0104462453728afabf091336bd0eb20;hb=394ea85ef47f8b145437e1498266487c4f96f285;hp=db4785a3bdb8b12fbc3fc1b28ed7ec71a62fdee6;hpb=ee3bfc5a989b5c0a1ea5a094e9541169ea2eb4ad;p=sbcl.git diff --git a/tests/clos.impure-cload.lisp b/tests/clos.impure-cload.lisp index db4785a..f0a1829 100644 --- a/tests/clos.impure-cload.lisp +++ b/tests/clos.impure-cload.lisp @@ -70,5 +70,15 @@ ;;; (we can't call it without defining methods on allocate-instance ;;; etc., but we should be able to define it). +;;; the ctor MAKE-INSTANCE optimizer used not to handle duplicate +;;; initargs. +(defclass dinitargs-class1 () + ((a :initarg :a))) +(assert (= (slot-value (make-instance 'dinitargs-class1 :a 1 :a 2) 'a) 1)) + +(defclass dinitargs-class2 () + ((b :initarg :b1 :initarg :b2))) +(assert (= (slot-value (make-instance 'dinitargs-class2 :b2 3 :b1 4) 'b) 3)) + ;;; success (sb-ext:quit :unix-status 104) \ No newline at end of file