From c6e1c83f93f63a061f0804821ed29c656da38f28 Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Tue, 8 Feb 2022 16:03:10 +0000 Subject: Add work in progress concurrency. Might break stuff! --- eval.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index c6f6a8d..1d54e42 100644 --- a/eval.c +++ b/eval.c @@ -150,7 +150,7 @@ lookup(Datum var) else{ val = &symbol->value; if(val->tag == ArrayTag) - incref(val->array); /* since the value is now in the var AND in the code */ + incarrayref(val->array); /* since the value is now in the var AND in the code */ } val->shy = 0; traceprint("VAR %S = %S\n", var.name, ppdatum(*val)); @@ -200,7 +200,7 @@ dyadfun(Datum left, Datum right) result.func.code = right.hybrid; } result.func.left = left.array; - incref(left.array); + incarrayref(left.array); return result; } @@ -261,7 +261,7 @@ assign(Datum left, Datum right) symbol->undefined = 0; if(symbol->value.tag == ArrayTag){ symbol->value.array->stranded = 0; - incref(right.array); /* for the binding */ + incarrayref(right.array); /* for the binding */ } } }else{ @@ -307,7 +307,7 @@ assign(Datum left, Datum right) } right.shy = 1; if(right.tag == ArrayTag) - incref(right.array); /* for the returned array */ + incarrayref(right.array); /* for the returned array */ return right; } @@ -331,7 +331,7 @@ monadop(Datum left, Datum right) result.func.operator.left = arg; result.func.left = nil; if(arg->tag == ArrayTag) - incref(arg->array); + incarrayref(arg->array); return result; } @@ -348,7 +348,7 @@ dyadop(Datum left, Datum right) result.operator = left.operator; result.operator.right = arg; if(arg->tag == ArrayTag) - incref(arg->array); + incarrayref(arg->array); return result; } -- cgit v1.2.3