Do not reject CONS types that have arguments which are not of type T.

This commit is contained in:
Juan Jose Garcia Ripoll 2008-11-02 12:33:43 +01:00
parent 62cc1fbfe0
commit 699a77872d

View file

@ -1017,12 +1017,9 @@ if not possible."
(defun register-cons-type (&optional (car-type '*) (cdr-type '*))
(let ((car-tag (if (eq car-type '*) -1 (canonical-type car-type)))
(cdr-tag (if (eq cdr-type '*) -1 (canonical-type cdr-type))))
(cond ((or (zerop car-tag) (zerop cdr-tag))
0)
((and (= car-tag -1) (= cdr-tag -1))
(canonical-type 'CONS))
(t
(throw '+canonical-type-failure+ 'cons)))))
(if (or (zerop car-tag) (zerop cdr-tag))
0
(canonical-type 'CONS))))
;;----------------------------------------------------------------------
;; FIND-BUILT-IN-TAG