Track specified/invisible more carefully.
[ghc.git] / compiler / vectorise / Vectorise / Generic / PData.hs
index a8bffbe..54f5ace 100644 (file)
@@ -51,7 +51,8 @@ buildDataFamInst name' fam_tc vect_tc rhs
             rep_ty   = mkTyConApp rep_tc tys'
             pat_tys  = [mkTyConApp vect_tc tys']
             rep_tc   = mkAlgTyCon name'
-                           (mkPiTypesPreferFunTy tyvars' liftedTypeKind)
+                           (mkTyBindersPreferAnon tyvars' liftedTypeKind)
+                           liftedTypeKind
                            tyvars'
                            (map (const Nominal) tyvars')
                            Nothing
@@ -84,8 +85,8 @@ buildPDataDataCon orig_name vect_tc repr_tc repr
                             (map (const no_bang) comp_tys)
                             (Just $ map (const HsLazy) comp_tys)
                             []                     -- no field labels
-                            tvs
-                            []                     -- no existentials
+                            tvs (mkNamedBinders Specified tvs)
+                            [] []                  -- no existentials
                             []                     -- no eq spec
                             []                     -- no context
                             comp_tys
@@ -128,8 +129,8 @@ buildPDatasDataCon orig_name vect_tc repr_tc repr
                             (map (const no_bang) comp_tys)
                             (Just $ map (const HsLazy) comp_tys)
                             []                     -- no field labels
-                            tvs
-                            []                     -- no existentials
+                            tvs (mkNamedBinders Specified tvs)
+                            [] []                  -- no existentials
                             []                     -- no eq spec
                             []                     -- no context
                             comp_tys