Vec: fix bound check error

This commit is contained in:
Simon Cruanes 2026-03-11 03:26:57 -04:00
parent 6c8d6840f8
commit fcbaaae81d

View file

@ -73,11 +73,12 @@ let[@inline] get t i =
Array.unsafe_get t.data i Array.unsafe_get t.data i
let[@inline] set t i v = let[@inline] set t i v =
if i < 0 || i > t.sz then invalid_arg "vec.set";
if i = t.sz then if i = t.sz then
push t v push t v
else else if i >= 0 && i < t.sz then
Array.unsafe_set t.data i v Array.unsafe_set t.data i v
else
invalid_arg "vec.set"
let[@inline] fast_remove t i = let[@inline] fast_remove t i =
assert (i >= 0 && i < t.sz); assert (i >= 0 && i < t.sz);