summaryrefslogtreecommitdiff
path: root/testsuite/tests/polykinds/T7908.hs
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/polykinds/T7908.hs')
-rw-r--r--testsuite/tests/polykinds/T7908.hs14
1 files changed, 9 insertions, 5 deletions
diff --git a/testsuite/tests/polykinds/T7908.hs b/testsuite/tests/polykinds/T7908.hs
index 5895bbeddf..14178b204e 100644
--- a/testsuite/tests/polykinds/T7908.hs
+++ b/testsuite/tests/polykinds/T7908.hs
@@ -2,7 +2,9 @@
module T7908 where
-class Monad' (m :: (k -> *) -> *) where
+import Data.Kind (Type)
+
+class Monad' (m :: (k -> Type) -> Type) where
return' :: c a -> m c
(>>>=) :: m c -> (forall a . c a -> m d) -> m d
(>>-) :: m c -> (forall a . c a -> d) -> d
@@ -14,15 +16,17 @@ data Nat' (n :: Nat) where
Z :: Nat' Z'
S :: Nat' n -> Nat' (S' n)
-data Hidden :: (k -> *) -> * where
+data Hidden :: (k -> Type) -> Type where
Hide :: m a -> Hidden m
instance Monad' Hidden where
- return' :: forall (c :: k -> *) (a :: k) . c a -> Hidden c
+ return' :: forall k (c :: k -> Type) (a :: k) . c a -> Hidden c
return' = Hide
- (>>>=) :: forall (c :: k -> *) (d :: k -> *) . Hidden c -> (forall (a :: k) . c a -> Hidden d) -> Hidden d
+ (>>>=) :: forall k (c :: k -> Type) (d :: k -> Type) .
+ Hidden c -> (forall (a :: k) . c a -> Hidden d) -> Hidden d
Hide a >>>= f = f a
- (>>-) :: forall (c :: k -> *) d . Hidden c -> (forall (a :: k) . c a -> d) -> d
+ (>>-) :: forall k (c :: k -> Type) d .
+ Hidden c -> (forall (a :: k) . c a -> d) -> d
Hide a >>- f = f a