fix lazy take bug -- invariant being tested on unforced argument
(cherry picked from commit 808361b789
)
This commit is contained in:
parent
e5b2badea3
commit
01c641d14f
|
@ -576,8 +576,8 @@
|
|||
|
||||
(define* (take n l)
|
||||
(let ([n0 (! n)])
|
||||
(unless (exact-nonnegative-integer? n)
|
||||
(raise-type-error 'take "non-negative exact integer" 0 n l))
|
||||
(unless (exact-nonnegative-integer? n0)
|
||||
(raise-type-error 'take "non-negative exact integer" 0 n0 l))
|
||||
(let loop ([n n0] [l l])
|
||||
(if (zero? n)
|
||||
'()
|
||||
|
|
Loading…
Reference in New Issue
Block a user