From: Nikodemus S. <de...@us...> - 2007-07-19 13:45:03
|
Update of /cvsroot/sbcl/sbcl/tests In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv9046/tests Modified Files: compiler.pure.lisp Log Message: 1.0.7.31: paper over bug inlining known functions in high-debug code NOT A PROPER FIX! * Don't inline known functions unless let-conversion is enabled, which papers over the real bug -- apparently due to BIND/UNBIND-SENTINEL vop insertion. Index: compiler.pure.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/tests/compiler.pure.lisp,v retrieving revision 1.165 retrieving revision 1.166 diff -u -d -r1.165 -r1.166 --- compiler.pure.lisp 2 Jun 2007 10:51:03 -0000 1.165 +++ compiler.pure.lisp 19 Jul 2007 13:44:59 -0000 1.166 @@ -2264,3 +2264,15 @@ do (let ((arg (random (truncate most-positive-double-float)))) (assert (eql (funcall fun arg) (funcall op 0.0d0 arg))))))) + +(with-test (:name :high-debug-known-function-inlining) + (let ((fun (compile nil + '(lambda () + (declare (optimize (debug 3)) (inline append)) + (let ((fun (lambda (body) + (append + (first body) + nil)))) + (funcall fun + '((foo (bar))))))))) + (funcall fun))) |