X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fclos-typechecking.impure.lisp;h=87b760221d64b4bee62afb2bcae51f122845f8e4;hb=87cd7d9848d9beddbf74e9d56a0c0aea6e189ead;hp=f72cb67ffdc8fa2350725e9d04e310cf9e7a1392;hpb=4f8f4b25cb564509437d8fc26038143150077f14;p=sbcl.git diff --git a/tests/clos-typechecking.impure.lisp b/tests/clos-typechecking.impure.lisp index f72cb67..87b7602 100644 --- a/tests/clos-typechecking.impure.lisp +++ b/tests/clos-typechecking.impure.lisp @@ -231,4 +231,14 @@ (make-instance 'a :slot1 (lambda () 1)) (make-instance 'b :slot1 (lambda () 1))) - +(with-test (:name :alternate-metaclass/standard-instance-structure-protocol) + (defclass my-alt-metaclass (standard-class) ()) + (defmethod sb-mop:validate-superclass ((class my-alt-metaclass) superclass) + t) + (defclass my-alt-metaclass-instance-class () + ((slot :type fixnum :initarg :slot)) + (:metaclass my-alt-metaclass)) + (defun make-my-instance (class) + (make-instance class :slot :not-a-fixnum)) + (assert (raises-error? (make-my-instance 'my-alt-metaclass-instance-class) + type-error)))