Commit a6e35115 authored by pfdietz's avatar pfdietz

More THE tests, including compiled forms and (VALUES ... &REST ...) type specifiers.

parent 91f04b4d
......@@ -72,3 +72,39 @@
collect e)
nil)
(deftest the.11
(loop for e in *universe*
for type = (type-of e)
for x = (multiple-value-list (eval `(the ,type (the ,type
(quote ,e)))))
unless (and x (not (cdr x)) (eql (car x) e))
collect e)
nil)
(deftest the.12
(let ((lexpr
`(lambda ()
(and
,@(loop for e in *mini-universe*
for type = (type-of e)
collect `(eqlt (quote ,e) (the ,type (quote ,e))))))))
(funcall (compile nil lexpr)))
t)
(deftest the.13
(let ((x 0))
(values
(the (or symbol integer) (incf x))
x))
1 1)
(deftest the.14
(the (values &rest (cons t (cons t null))) (values 'a 'b))
a b)
(deftest the.15
(the (values &rest (cons symbol (cons symbol null))) (values 'a 'b))
a b)
(deftest the.16
(the (values &rest null) (values)))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment