diff --git a/eval.c b/eval.c index ffbf4fd..552554b 100644 --- a/eval.c +++ b/eval.c @@ -209,7 +209,7 @@ apply: return result; } - object args = PROC_COMP_ARGS(procedure); + object args = copyObject(PROC_COMP_ARGS(procedure)); env definitionEnv = PROC_COMP_ENV(procedure); env procEnv; @@ -238,6 +238,7 @@ apply: deleteObject(parameters); SIGERR(argumentNumberError); } + deleteObject(args); object *currentExprPointer = &PROC_COMP_BODY(procedure); object currentExpr;