X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FstgSyn%2FCoreToStg.lhs;h=1c8d4b1dfb600423685f1a2d63e64fe0b1e37121;hb=57984dc34dcb242772bb81f1795c9afa3b7c36c1;hp=13509cee94d3162de1d840c6ae34ed60f755733b;hpb=96d6d25b57d0a3f6b665d4d2255af111cf86c277;p=ghc-hetmet.git diff --git a/compiler/stgSyn/CoreToStg.lhs b/compiler/stgSyn/CoreToStg.lhs index 13509ce..1c8d4b1 100644 --- a/compiler/stgSyn/CoreToStg.lhs +++ b/compiler/stgSyn/CoreToStg.lhs @@ -18,7 +18,7 @@ import StgSyn import Type import TyCon import Id -import Var ( Var, globalIdDetails, idType ) +import Var ( Var ) import IdInfo import DataCon import CostCentre ( noCCS ) @@ -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