0.7.11.7:
[sbcl.git] / src / compiler / srctran.lisp
index bdcbec7..0661685 100644 (file)
      (let* ((specifier (continuation-value type))
            (result-typeoid (careful-specifier-type specifier)))
        (cond
+        ((null result-typeoid) nil)
         ((csubtypep result-typeoid (specifier-type 'number))
          ;; the difficult case: we have to cope with ANSI 12.1.5.3
          ;; Rule of Canonical Representation for Complex Rationals,
 (defoptimizer (compile derive-type) ((nameoid function))
   (when (csubtypep (continuation-type nameoid)
                   (specifier-type 'null))
-    (specifier-type 'function)))
+    (values-specifier-type '(values function boolean boolean))))
 
 ;;; FIXME: Maybe also STREAM-ELEMENT-TYPE should be given some loving
 ;;; treatment along these lines? (See discussion in COERCE DERIVE-TYPE