From a2fe6073155b0d056a257d8f860baf9816c2381e Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Fri, 5 Dec 2008 10:19:32 +0000 Subject: [PATCH] Make CoreToStg a little more robust to eta expansion --- compiler/stgSyn/CoreToStg.lhs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/compiler/stgSyn/CoreToStg.lhs b/compiler/stgSyn/CoreToStg.lhs index f7347ae..1c8d4b1 100644 --- a/compiler/stgSyn/CoreToStg.lhs +++ b/compiler/stgSyn/CoreToStg.lhs @@ -1082,9 +1082,16 @@ myCollectArgs expr go (Note (SCC _) _) _ = pprPanic "CoreToStg.myCollectArgs" (ppr expr) go (Cast e _) as = go e as go (Note _ e) as = go e as + go (Lam b e) as + | isTyVar b = go e as -- Note [Collect args] go _ _ = pprPanic "CoreToStg.myCollectArgs" (ppr expr) \end{code} +Note [Collect args] +~~~~~~~~~~~~~~~~~~~ +This big-lambda case occurred following a rather obscure eta expansion. +It all seems a bit yukky to me. + \begin{code} stgArity :: Id -> HowBound -> Arity stgArity _ (LetBound _ arity) = arity -- 1.7.10.4