summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compiler/specialise/SpecConstr.lhs5
1 files changed, 3 insertions, 2 deletions
diff --git a/compiler/specialise/SpecConstr.lhs b/compiler/specialise/SpecConstr.lhs
index 46cea9bc6c..1ee5935fa0 100644
--- a/compiler/specialise/SpecConstr.lhs
+++ b/compiler/specialise/SpecConstr.lhs
@@ -18,7 +18,8 @@ import CoreSubst ( Subst, mkSubst, substExpr )
import CoreTidy ( tidyRules )
import PprCore ( pprRules )
import WwLib ( mkWorkerArgs )
-import DataCon ( dataConRepArity, dataConTyVars )
+import DataCon ( dataConRepArity, isVanillaDataCon,
+ dataConUnivTyVars )
import Type ( Type, tyConAppArgs, tyVarsOfTypes )
import Rules ( matchN )
import Id ( Id, idName, idType, isDataConWorkId_maybe,
@@ -592,7 +593,7 @@ conArgOccs (ScrutOcc fm) (DataAlt dc)
| Just pat_arg_occs <- lookupUFM fm dc
= tyvar_unks ++ pat_arg_occs
where
- tyvar_unks | isVanillaDataCon dc = [UnkOcc | tv <- dataConTyVars dc]
+ tyvar_unks | isVanillaDataCon dc = [UnkOcc | tv <- dataConUnivTyVars dc]
| otherwise = []
conArgOccs other con = repeat UnkOcc