X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompiler.impure.lisp;h=f91feb35d8d28e1f289d97ebb2df781d31063c61;hb=57d7dd0f59b9df89feb1175b0efc449bb0b8d400;hp=ebd0b727f83a47f1707515c6175f9101abcde055;hpb=6256e8428635bbbca648ed3ff59e810bd1d792ad;p=sbcl.git diff --git a/tests/compiler.impure.lisp b/tests/compiler.impure.lisp index ebd0b72..f91feb3 100644 --- a/tests/compiler.impure.lisp +++ b/tests/compiler.impure.lisp @@ -1448,4 +1448,18 @@ (assert (default-values-bug-demo-main)) +;;; copy propagation bug reported by Paul Khuong + +(defun local-copy-prop-bug-with-move-arg (x) + (labels ((inner () + (values 1 0))) + (if x + (inner) + (multiple-value-bind (a b) + (inner) + (values b a))))) + +(assert (equal '(0 1) (multiple-value-list (local-copy-prop-bug-with-move-arg nil)))) +(assert (equal '(1 0) (multiple-value-list (local-copy-prop-bug-with-move-arg t)))) + ;;; success