diff --git a/src/Defun.ml b/src/Defun.ml index d464136..e92b7e3 100644 --- a/src/Defun.ml +++ b/src/Defun.ml @@ -77,7 +77,11 @@ let rec walk_term fs t = vars (S.vvars (List.tl args)) in let thisTag = freshTag () in - let freeVars = Atom.Set.elements @@ S.fv_term body in + let freeVars = Atom.Set.elements @@ + Atom.Set.diff + (S.fv_term body) + (Atom.Set.of_list vars) + in let thisFunc = T.Branch(thisTag, freeVars, nBody) in let fs = add_func fs arity thisFunc in