[Internal] actually initialize the array to n, not to 0.
This commit is contained in:
parent
f470196f41
commit
0c3a57f573
@ -47,7 +47,7 @@ array32 (I# n) l = unsafeDoIO $ IO $ \s ->
|
|||||||
where
|
where
|
||||||
loop _ st mb [] = freezeArray mb st
|
loop _ st mb [] = freezeArray mb st
|
||||||
loop i st mb ((W32# x):xs)
|
loop i st mb ((W32# x):xs)
|
||||||
| booleanPrim (i ==# 0#) = freezeArray mb st
|
| booleanPrim (i ==# n) = freezeArray mb st
|
||||||
| otherwise =
|
| otherwise =
|
||||||
let st' = writeWord32Array# mb i x st
|
let st' = writeWord32Array# mb i x st
|
||||||
in loop (i +# 1#) st' mb xs
|
in loop (i +# 1#) st' mb xs
|
||||||
@ -63,7 +63,7 @@ array64 (I# n) l = unsafeDoIO $ IO $ \s ->
|
|||||||
where
|
where
|
||||||
loop _ st mb [] = freezeArray mb st
|
loop _ st mb [] = freezeArray mb st
|
||||||
loop i st mb ((W64# x):xs)
|
loop i st mb ((W64# x):xs)
|
||||||
| booleanPrim (i ==# 0#) = freezeArray mb st
|
| booleanPrim (i ==# n) = freezeArray mb st
|
||||||
| otherwise =
|
| otherwise =
|
||||||
let st' = writeWord64Array# mb i x st
|
let st' = writeWord64Array# mb i x st
|
||||||
in loop (i +# 1#) st' mb xs
|
in loop (i +# 1#) st' mb xs
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user