summaryrefslogtreecommitdiff
path: root/src/core/functions.c
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-02-20 21:53:23 +0200
committerPaul Buetow <paul@buetow.org>2026-02-20 21:53:23 +0200
commit43614694706ac61b2cebef486b7fa9368c78fe6a (patch)
tree06fc10249b5f5e02449d93cf5f52bf80590f1bea /src/core/functions.c
parent03b874818315e7dc9fb2ccf26716a0fb65242a57 (diff)
Add README.md and array slicing support
Diffstat (limited to 'src/core/functions.c')
-rw-r--r--src/core/functions.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/functions.c b/src/core/functions.c
index 76b4eed..a448f84 100644
--- a/src/core/functions.c
+++ b/src/core/functions.c
@@ -148,6 +148,16 @@ _process(Interpret *p_interpret, Token *p_token_store, Token *p_token_op,
switch (tt_op) {
case TT_ASSIGN:
{
+ /* Array element assignment: arr[i] = val */
+ if (p_interpret->p_token_array_lhs != NULL) {
+ array_set(p_interpret->p_token_array_lhs->p_array,
+ p_interpret->i_array_lhs_index,
+ p_token_store);
+ p_interpret->p_token_array_lhs = NULL;
+ return;
+ }
+
+ /* Regular variable assignment */
Token *p_token_assign = p_interpret->p_token_temp;
TokenType tt_assign = token_get_tt(p_token_assign);