From 76d1fbc48694f866da8550211255dbd06165de49 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Wed, 6 Jun 1990 13:49:57 +0000 Subject: [PATCH] Added use of *unparse-function-type-simplify* to prevent complex function types from being checked, even when they are buried in other types (like OR.) --- compiler/checkgen.lisp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/compiler/checkgen.lisp b/compiler/checkgen.lisp index 1c1fe8ffe..3939c5116 100644 --- a/compiler/checkgen.lisp +++ b/compiler/checkgen.lisp @@ -279,13 +279,14 @@ (defun make-type-check-form (types) (collect ((temps)) (dotimes (i (length types)) - (declare (ignore i)) (temps (gensym))) `(multiple-value-bind ,(temps) 'dummy ,@(mapcar #'(lambda (temp type) - (let* ((spec (type-specifier (second type))) + (let* ((spec + (let ((*unparse-function-type-simplify* t)) + (type-specifier (second type)))) (test (if (first type) `(not ,spec) spec))) `(unless (typep ,temp ',test) (%type-check-error -- GitLab