X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fseq.impure.lisp;h=a659be1d335602082a59b0a9893dd476ec7cfe2e;hb=26265f96389d737bf2e1e4c787ea8943ae499944;hp=2145c2d58cbcffe3ed52a14780773a3500882e02;hpb=1596e9fdeb2265c4a00e441bc8a1dbdc5364afa7;p=sbcl.git diff --git a/tests/seq.impure.lisp b/tests/seq.impure.lisp index 2145c2d..a659be1 100644 --- a/tests/seq.impure.lisp +++ b/tests/seq.impure.lisp @@ -377,15 +377,18 @@ (svref x 0)) (assert (raises-error? (svrefalike #*0) type-error)) -;;; checks for uniform bounding index handling under SAFETY 3 code. +;;; checks for uniform bounding index handling. +;;; +;;; This used to be SAFETY 3 only, but bypassing these checks with +;;; above-zero speed when SPEED > SAFETY is not The SBCL Way. ;;; ;;; KLUDGE: not all in one big form because that causes SBCL to spend ;;; an absolute age trying to compile it. (defmacro sequence-bounding-indices-test (&body body) `(progn - (locally + (locally ;; See Issues 332 [and 333(!)] in the CLHS - (declare (optimize (safety 3))) + (declare (optimize (speed 3) (safety 1))) (let ((string (make-array 10 :fill-pointer 5 :initial-element #\a @@ -401,7 +404,7 @@ ,@(cdr body)))) (locally ;; See Issues 332 [and 333(!)] in the CLHS - (declare (optimize (safety 3))) + (declare (optimize (speed 3) (safety 1))) (let ((string (make-array 10 :fill-pointer 5 :initial-element #\a