summaryrefslogtreecommitdiff
path: root/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/eval.c b/eval.c
index 1070cb2..86d0d15 100644
--- a/eval.c
+++ b/eval.c
@@ -230,11 +230,9 @@ nameis(Datum left, Datum right)
Datum
assign(Datum left, Datum right)
{
- if(left.symbol->setfn != nil){
- int ok = left.symbol->setfn(right);
- if(!ok)
- throwerror(nil, ESyntax);
- }else{
+ if(left.symbol->setfn != nil)
+ left.symbol->setfn(right);
+ else{
if(left.symbol->undefined == 0 && left.symbol->value.tag == ArrayTag)
freearray(left.symbol->value.array);
left.symbol->value = right;