X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompiler.impure-cload.lisp;h=bdd3550389bde7876ddd043c070b11e5effcd508;hb=8a8a8922802460741d6f8f6c11d71b1f414cf3a7;hp=e42ec6234c4816b4df180133fab6a10df847eff2;hpb=1f7f3d741e06d63b6a5e140a0e6045bba29e17fb;p=sbcl.git diff --git a/tests/compiler.impure-cload.lisp b/tests/compiler.impure-cload.lisp index e42ec62..bdd3550 100644 --- a/tests/compiler.impure-cload.lisp +++ b/tests/compiler.impure-cload.lisp @@ -360,5 +360,27 @@ (let ((list (multiple-value-list (values-consumer #'values-producer)))) (assert (= (length list) 8)) (assert (null (nth 7 list)))) + +;;; failed on Alpha prior to sbcl-0.8.10.30 +(defun lotso-values () + (values 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9 + 0 1 2 3 4 5 6 7 8 9)) + +;;; bug 313: source transforms were "lisp-1" +(defun srctran-lisp1-1 (cadr) (if (functionp cadr) (funcall cadr 1) nil)) +(assert (eql (funcall (eval #'srctran-lisp1-1) #'identity) 1)) +(without-package-locks + ;; this be a nasal demon, but test anyways + (defvar caar)) +(defun srctran-lisp1-2 (caar) (funcall (sb-ext:truly-the function caar) 1)) +(assert (eql (funcall (eval #'srctran-lisp1-2) #'identity) 1)) (sb-ext:quit :unix-status 104)