diff --git a/scheme/cyclone/cps-optimizations.sld b/scheme/cyclone/cps-optimizations.sld index 42674644..3d7168e3 100644 --- a/scheme/cyclone/cps-optimizations.sld +++ b/scheme/cyclone/cps-optimizations.sld @@ -1461,7 +1461,8 @@ ;; case we do not want to beta-expand as a contraction ;; because duplicate instances of the same code may be ;; introduced, causing problems downstream. - (not (contains-if? (ast:lambda-body fnc))) + (and called-once? + (not (contains-if? (ast:lambda-body fnc)))) )) ))) (else #f)))