diff options
Diffstat (limited to 'src/parser.c')
-rw-r--r-- | src/parser.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/parser.c b/src/parser.c index 64bd22d..0968ccd 100644 --- a/src/parser.c +++ b/src/parser.c | |||
@@ -456,7 +456,9 @@ symbol_in_env(Environment *env, Object *symbol) { | |||
456 | 456 | ||
457 | void | 457 | void |
458 | insert_local(Environment *env, Object *symbol, Object *value) { | 458 | insert_local(Environment *env, Object *symbol, Object *value) { |
459 | if (find_var_index(env->locals, symbol) != -1) { | 459 | ssize_t idx = find_var_index(env->locals, symbol); |
460 | if (idx != -1) { | ||
461 | env->local_values[idx] = value; | ||
460 | return; | 462 | return; |
461 | } | 463 | } |
462 | array_push(env->locals, symbol); | 464 | array_push(env->locals, symbol); |