diff --git a/scheme/cyclone/cps-optimizations.sld b/scheme/cyclone/cps-optimizations.sld index afcafcff..370a0dfb 100644 --- a/scheme/cyclone/cps-optimizations.sld +++ b/scheme/cyclone/cps-optimizations.sld @@ -96,7 +96,8 @@ ;; Follow references ((ref? value) (with-var! value (lambda (var) - (update-lambda-atv! (cons value syms) (adbv:assigned-value var))))) + (if (not (member value syms)) + (update-lambda-atv! (cons value syms) (adbv:assigned-value var)))))) (else #f)) )