/[cmucl]/src/compiler/checkgen.lisp
ViewVC logotype

Diff of /src/compiler/checkgen.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.29 by dtc, Thu Jul 6 18:37:00 2000 UTC revision 1.30 by dtc, Sun Jul 9 13:59:58 2000 UTC
# Line 274  Line 274 
274  ;;; derived type and the asserted type, then we check for the negation of this  ;;; derived type and the asserted type, then we check for the negation of this
275  ;;; type instead.  ;;; type instead.
276  ;;;  ;;;
277    ;;; When the proven type represents an unknown number of values, but Cont's
278    ;;; destination receives only a single value, a :hairy type check is
279    ;;; generated for the single-values-type of the asserted type.
280    ;;;
281  (defun continuation-check-types (cont)  (defun continuation-check-types (cont)
282    (declare (type continuation cont))    (declare (type continuation cont))
283    (let ((atype (continuation-asserted-type cont))    (let ((atype (continuation-asserted-type cont))
# Line 297  Line 301 
301               (assert (values-type-p atype))               (assert (values-type-p atype))
302               (assert (null (args-type-required atype)))               (assert (null (args-type-required atype)))
303               (maybe-negate-check cont (args-type-optional atype) nil))               (maybe-negate-check cont (args-type-optional atype) nil))
304                ((or (exit-p dest) (return-p dest) (mv-combination-p dest))
305                 (values :too-hairy nil))
306              (t              (t
307               (values :too-hairy nil))))))               (maybe-negate-check cont (list (single-value-type atype)) t))))))
308    
309    
310  ;;; Probable-Type-Check-P  --  Internal  ;;; Probable-Type-Check-P  --  Internal

Legend:
Removed from v.1.29  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.5