diff --git a/ansi-tests/random-int-form.lsp b/ansi-tests/random-int-form.lsp index 2a24dacd42f0b79acc7f9d93b11794268d2e2e2a..9fa99b0210eb5360b780dec1fec5b58afbb9581c 100644 --- a/ansi-tests/random-int-form.lsp +++ b/ansi-tests/random-int-form.lsp @@ -138,15 +138,17 @@ (40 (let ((op (random-from-seq '(- abs signum 1+ 1- identity progn floor ceiling truncate round realpart imagpart - integer-length logcount values)))) + integer-length logcount values multiple-value-prog1 + prog1 unwind-protect)))) `(,op ,(make-random-integer-form (1- size))))) (2 `(isqrt (abs ,(make-random-integer-form (- size 2))))) -#| (3 + + (2 (destructuring-bind (s1 s2) (random-partition (- size 2) 2) `(ash ,(make-random-integer-form s1) (min ,(random 100) - ,(make-random-integer-form s2))))) |# + ,(make-random-integer-form s2))))) ;; binary floor, ceiling, truncate, round (4 @@ -161,7 +163,7 @@ ,(make-random-integer-form s2)))))) ;; Binary op - (80 + (60 (let* ((op (random-from-seq '(+ - * * logand min max min max ;; gcd lcm ;; #-:allegro @@ -572,7 +574,7 @@ (try -1) (prune-fn form try-fn)) - ((abs 1+ 1- identity values progn) + ((abs 1+ 1- identity values progn prog1 multiple-value-prog1 unwind-protect) (mapc #'try args) (prune-fn form try-fn))