fixed: bug with `array.insert`
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 19 Feb 2024 20:30:40 +0000 (14:30 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Mon, 19 Feb 2024 20:30:40 +0000 (14:30 -0600)
CHANGELOG
compiler/src/lex.c
core/container/array.onyx

index e12c7a86d461fdb1bc521d2df5d36c2aa5d458bf..273a692384a931d82c415a1f0432aec8e7a639bb 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -69,6 +69,7 @@ Contributors:
 - @jtakakura (1 pull request)
 - @hatappo (1 pull request)
 - @Syuparn (1 pull request)
+- @benstt (1 pull request)
 
 
 Release v0.1.8
index 00459736158e457e489a839f8e5d029f70d5158c..cc0e4d94f369e54aac3c5e81f27bb10b7df56257 100644 (file)
@@ -220,7 +220,7 @@ whitespace_skipped:
 
         tk.length = tokenizer->curr - tk.text - 2;
 
-        if (bh_arr_length(tokenizer->tokens) == 0 && bh_str_starts_with(tk.text, "+optional_semicolons")) {
+        if (bh_arr_length(tokenizer->tokens) == 0 && bh_str_starts_with(tk.text, "+optional-semicolons")) {
             tokenizer->optional_semicolons = 1;
         }
 
index 95c476e79a0461e7cadb65695f3503827f986344..17cb97b5e0f8a09382caa923fed431f43d3c3b88 100644 (file)
@@ -166,7 +166,7 @@ insert :: #match #local {}
 
 #overload
 insert :: (arr: &[..] $T, idx: u32, x: T) -> bool {
-    if idx >= arr.count do return false;
+    if idx > arr.count do return false;
     if !ensure_capacity(arr, arr.count + 1) do return false;
 
     arr.count += 1;
@@ -181,7 +181,7 @@ insert :: (arr: &[..] $T, idx: u32, x: T) -> bool {
 
 #overload
 insert :: (arr: &[..] $T, idx: u32, new_arr: [] T) -> bool {
-    if idx >= arr.count do return false;
+    if idx > arr.count do return false;
     if !ensure_capacity(arr, arr.count + new_arr.count) do return false;
 
     arr.count += new_arr.count;
@@ -200,7 +200,7 @@ insert :: (arr: &[..] $T, idx: u32, new_arr: [] T) -> bool {
     Inserts a zeroed-element at `idx`.
 """
 insert_empty :: (arr: &[..] $T, idx: u32) -> bool {
-    if idx >= arr.count do return false;
+    if idx > arr.count do return false;
     if !ensure_capacity(arr, arr.count + 1) do return false;
 
     arr.count += 1;