From 59eaa136255dfcd3d8e65844ef7c8a22bd7413ba Mon Sep 17 00:00:00 2001 From: gingerBill Date: Wed, 25 Mar 2026 14:10:08 +0000 Subject: [PATCH] Fix indexing logic of FCD arrays --- src/check_expr.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/check_expr.cpp b/src/check_expr.cpp index e507e81e5..501d37e54 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -8889,8 +8889,11 @@ gb_internal bool check_set_index_data(Operand *o, Type *t, bool indirection, i64 case Type_FixedCapacityDynamicArray: o->type = t->FixedCapacityDynamicArray.elem; - if (o->mode != Addressing_Constant) { + if (indirection) { o->mode = Addressing_Variable; + } else if (o->mode != Addressing_Variable && + o->mode != Addressing_Constant) { + o->mode = Addressing_Value; } return true;