@@ -284,8 +284,8 @@ buildSCG (_, n) = do
285delazy = delazy' False -- not lazy codata
285delazy = delazy' False -- not lazy codata
286delazy' all t@(App _ f a)
286delazy' all t@(App _ f a)
287− | (P _ (UN l) _, [_, _, arg]) <- unApply t,
287+ | (P _ (UN l) _, [P _ (UN lty) _, _, arg]) <- unApply t,
288− l == txt "Force" = delazy' all arg
288+ l == txt "Force" && (all || lty /= txt "Infinite") = delazy' all arg
289 | (P _ (UN l) _, [P _ (UN lty) _, _, arg]) <- unApply t,
289 | (P _ (UN l) _, [P _ (UN lty) _, _, arg]) <- unApply t,
290 l == txt "Delay" && (all || lty /= txt "Infinite") = delazy arg
290 l == txt "Delay" && (all || lty /= txt "Infinite") = delazy arg
291 | (P _ (UN l) _, [P _ (UN lty) _, arg]) <- unApply t,
291 | (P _ (UN l) _, [P _ (UN lty) _, arg]) <- unApply t,