Hi,
There is a problem in the recent improvements to the way the compiler handles THE type checking. File-compiling the code below leads to an error "The value 6 is not of type FOO".
(defconstant +foo-OK+ (the (integer 0 10) 5))
(deftype foo () '(integer 0 10))
(defmacro assemble-foo (x) `(the foo ,x))
(defconstant +foo+ (assemble-foo 6))
Eric