diff --git a/ghc/compiler/stranal/WorkWrap.lhs b/ghc/compiler/stranal/WorkWrap.lhs index 822af1e5e07cd81b647c3ef1aa278077b219460c..4a749243e24c6dd67d8c155f95171013a111d9e3 100644 --- a/ghc/compiler/stranal/WorkWrap.lhs +++ b/ghc/compiler/stranal/WorkWrap.lhs @@ -245,6 +245,9 @@ getWorkerIdAndCons wrap_id wrapper_fn go (Lam _ body) = go body go (Case _ (AlgAlts [(con,_,rhs)] _)) = let (wrap_id, cons) = go rhs in (wrap_id, cons `addOneToIdSet` con) + go (Let (NonRec _ (Coerce (CoerceOut con) _ _)) body) + = let (wrap_id, cons) = go body + in (wrap_id, cons `addOneToIdSet` con) go other = (get_work_id other, emptyIdSet) get_work_id (App fn _) = get_work_id fn