From: Christophe R. <cr...@us...> - 2006-09-14 21:10:50
|
Update of /cvsroot/sbcl/sbcl/tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4113/tests Modified Files: type.impure.lisp Log Message: 0.9.16.30: A couple of type-system fixups for #+sb-eval ... we have to have sb-eval:interpreted-function defined on the host, so that the deftype for COMPILED-FUNCTION does not involve any unknown types. So ... make !defstruct-with-alternate-metaclass compilable by the host compiler, similarly to sb-xc:defstruct. Don't quite do it properly: put a FIXME note in for posterity. ... move early-full-eval.lisp earlier in the build, and split out the definition for compiled-function from deftypes-for-target to late-deftypes-for-target (after the interpreted-function class is defined) ... (declare (type compiled-function x)) should do a type check for compiled-function, not for simply FUNCTION. ... the problem was actually in PRIMITIVE-TYPE on intersection types; the computation was fairly bogus. Make it less bogus. ... also delete some stale classoid symbols. Index: type.impure.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/type.impure.lisp,v retrieving revision 1.48 retrieving revision 1.49 diff -u -d -r1.48 -r1.49 --- type.impure.lisp 1 Sep 2006 14:57:29 -0000 1.48 +++ type.impure.lisp 14 Sep 2006 21:10:44 -0000 1.49 @@ -551,4 +551,11 @@ (assert-t-t (subtypep '(or fixnum simple-string end-of-file parse-error fixnum vector) '(or fixnum vector end-of-file parse-error fixnum simple-string))) + +#+sb-eval +(assert-t-t + (subtypep '(and function (not compiled-function) + (not sb-eval:interpreted-function)) + nil)) + ;;; success |