From 24e600e7c3ce6dab4c6c3f421e5d1ae35dc04bad Mon Sep 17 00:00:00 2001 From: iamcheeseman Date: Tue, 14 Apr 2026 19:35:49 -0400 Subject: microscript: add core:range() --- uscript/val.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'uscript/val.c') diff --git a/uscript/val.c b/uscript/val.c index 357facc..76f1376 100644 --- a/uscript/val.c +++ b/uscript/val.c @@ -74,6 +74,7 @@ struct us_cfunc *create_cfunc(struct us_str *name, us_cfunc_sig func, int argc) cfunc->name = name; cfunc->c = func; cfunc->argc = argc; + cfunc->upvals = da_create(struct us_val, 0); init_obj(wrap_cfunc(cfunc), &cfunc->header); return cfunc; } @@ -116,7 +117,12 @@ void free_val(struct us_val v) mem_free(func); break; } - case VAL_CFUNC: + case VAL_CFUNC: { + struct us_cfunc *cfunc = get_cfunc(v); + da_free(cfunc->upvals); + mem_free(cfunc); + break; + } case VAL_UPVAL: mem_free(get_obj(v)); break; -- cgit v1.3-2-g0d8e