From: Alexey D. <ade...@us...> - 2004-05-01 13:53:52
|
Update of /cvsroot/sbcl/sbcl/tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11417/tests Modified Files: compiler.pure.lisp Log Message: 0.8.10.4: * Fix MISC.293 = simple variant of bug 303: multy-use LVAR should not be written in the middle of a BLOCK. Index: compiler.pure.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/compiler.pure.lisp,v retrieving revision 1.89 retrieving revision 1.90 diff -u -d -r1.89 -r1.90 --- compiler.pure.lisp 1 May 2004 11:22:39 -0000 1.89 +++ compiler.pure.lisp 1 May 2004 13:53:43 -0000 1.90 @@ -1261,3 +1261,18 @@ (compiler-note () (error "IDENTITY derive-type not applied."))) (assert (null (funcall (compile nil '(lambda (x) (funcall #'cddr x))) nil))) + +;;; MISC.293 = easy variant of bug 303: repeated write to the same +;;; LVAR; here the first write may be cleared before the second is +;;; made. +(assert + (zerop + (funcall + (compile + nil + '(lambda () + (declare (notinline complex)) + (declare (optimize (speed 1) (space 0) (safety 1) + (debug 3) (compilation-speed 3))) + (flet ((%f () (multiple-value-prog1 0 (return-from %f 0)))) + (complex (%f) 0))))))) |