From 7b4c33477c0f9b54e829287503c6be62bec41148 Mon Sep 17 00:00:00 2001 From: ram <ram> Date: Fri, 28 Dec 1990 16:52:31 +0000 Subject: [PATCH] Changed CONTINUATION-TN to call CONTINUATION-CHECK-TYPES instead of rolling its own, so that it doesn't choke when a type check is weakened but left simple (which is only known to C-C-T). --- compiler/ir2tran.lisp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/compiler/ir2tran.lisp b/compiler/ir2tran.lisp index 6e072964e..5efcc7ecc 100644 --- a/compiler/ir2tran.lisp +++ b/compiler/ir2tran.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir2tran.lisp,v 1.26 1990/12/06 22:24:33 wlott Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir2tran.lisp,v 1.27 1990/12/28 16:52:31 ram Exp $ ;;; ;;; This file contains the virtual machine independent parts of the code ;;; which does the actual translation of nodes to VOPs. @@ -279,11 +279,12 @@ (ptype (ir2-continuation-primitive-type 2cont))) (cond ((eq (continuation-type-check cont) t) - (let ((temp (make-normal-tn ptype))) - (emit-type-check node block cont-tn temp - (single-value-type - (continuation-asserted-type cont))) - temp)) + (multiple-value-bind (check types) + (continuation-check-types cont) + (assert (eq check :simple)) + (let ((temp (make-normal-tn ptype))) + (emit-type-check node block cont-tn temp (first types)) + temp))) ((eq (tn-primitive-type cont-tn) ptype) cont-tn) (t (let ((temp (make-normal-tn ptype))) -- GitLab