summaryrefslogtreecommitdiff
path: root/uscript/uscript.c
diff options
context:
space:
mode:
authoriamcheeseman <[email protected]>2026-04-14 21:15:38 -0400
committeriamcheeseman <[email protected]>2026-04-14 21:15:38 -0400
commit7752d0b775c4df0de6fec688107e904ad20e1de6 (patch)
tree4255de168db8a527b7e99217021dd052bd2024e2 /uscript/uscript.c
parenta2ebe62cdbbe12e75e3b5c79de3dce9fbeb1ca20 (diff)
microengine: compound operators
Diffstat (limited to 'uscript/uscript.c')
-rw-r--r--uscript/uscript.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/uscript/uscript.c b/uscript/uscript.c
index 0e6fc4b..d82ce35 100644
--- a/uscript/uscript.c
+++ b/uscript/uscript.c
@@ -12,7 +12,7 @@ void core_print(int argc)
{
(void)argc;
- char *str = val_to_str(vm_peek(), NULL);
+ char *str = val_to_str(vm_peek(0), NULL);
olog(str);
mem_free(str);
@@ -23,7 +23,7 @@ void core_len(int argc)
{
(void)argc;
- struct us_val val = vm_peek();
+ struct us_val val = vm_peek(0);
switch (val.type) {
case VAL_ARR:
vm_push(create_num(da_len(get_arr(val)->e)));
@@ -43,6 +43,7 @@ void core_range_next(int argc)
struct us_cfunc *cfunc = get_cfunc(vm_get(-1));
double min = get_num(cfunc_get_upval(cfunc, 0));
double max = get_num(cfunc_get_upval(cfunc, 1));
+ double inc = get_num(cfunc_get_upval(cfunc, 2));
if (min == max) {
vm_push(create_zilch());
@@ -51,7 +52,6 @@ void core_range_next(int argc)
vm_push(create_num(min));
- int inc = max > min ? 1 : -1;
cfunc_set_upval(cfunc, 0, create_num(min + inc));
}