summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compiler/simplCore/SimplUtils.lhs3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/simplCore/SimplUtils.lhs b/compiler/simplCore/SimplUtils.lhs
index 4a8ad544a9..1c08d6bf28 100644
--- a/compiler/simplCore/SimplUtils.lhs
+++ b/compiler/simplCore/SimplUtils.lhs
@@ -1008,8 +1008,9 @@ mkLam env bndrs body
| dopt Opt_DoLambdaEtaExpansion dflags,
not (inGentleMode env), -- In gentle mode don't eta-expansion
- any isRuntimeVar bndrs -- because it can clutter up the code
+ -- because it can clutter up the code
-- with casts etc that may not be removed
+ not (all isTyVar bndrs) -- Don't eta expand type abstractions
= do { let body' = tryEtaExpansion dflags body
; return (mkLams bndrs body') }