summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
authorPeter Mikkelsen <petermikkelsen10@gmail.com>2022-02-08 16:03:10 +0000
committerPeter Mikkelsen <petermikkelsen10@gmail.com>2022-02-08 16:03:10 +0000
commitc6e1c83f93f63a061f0804821ed29c656da38f28 (patch)
tree8f3b8863d9db2d79722a4ec104bb2eeb807f87e0 /eval.c
parent511ae2c1879676568b2f11312c38a66b2caa21c0 (diff)
Add work in progress concurrency. Might break stuff!
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c12
1 files changed, 6 insertions, 6 deletions
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;
}