From: Alexey D. <ade...@us...> - 2002-12-21 06:40:18
|
Update of /cvsroot/sbcl/sbcl/src/compiler In directory sc8-pr-cvs1:/tmp/cvs-serv30509/src/compiler Modified Files: ir1-translators.lisp Log Message: 0.7.10.28: Fixed bug 231: SETQ did not correctly check the type of a variable being set (reported by Robert E. Brown) Index: ir1-translators.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/ir1-translators.lisp,v retrieving revision 1.35 retrieving revision 1.36 diff -u -d -r1.35 -r1.36 --- ir1-translators.lisp 9 Dec 2002 11:54:49 -0000 1.35 +++ ir1-translators.lisp 21 Dec 2002 06:38:00 -0000 1.36 @@ -848,8 +848,8 @@ (defun setq-var (start cont var value) (declare (type continuation start cont) (type basic-var var)) (let ((dest (make-continuation))) - (assert-continuation-type dest (leaf-type var) (lexenv-policy *lexenv*)) (ir1-convert start dest value) + (assert-continuation-type dest (leaf-type var) (lexenv-policy *lexenv*)) (let ((res (make-set :var var :value dest))) (setf (continuation-dest dest) res) (setf (leaf-ever-used var) t) @@ -859,7 +859,7 @@ ;;;; CATCH, THROW and UNWIND-PROTECT -;;; We turn THROW into a multiple-value-call of a magical function, +;;; We turn THROW into a MULTIPLE-VALUE-CALL of a magical function, ;;; since as as far as IR1 is concerned, it has no interesting ;;; properties other than receiving multiple-values. (def-ir1-translator throw ((tag result) start cont) |