0fc53e76e93e046fcf32cde53621042f14e843ec
[ghc.git] / testsuite / tests / ghci / scripts / T4175.hs
1 {-# LANGUAGE TypeFamilies #-}
2 {-# LANGUAGE ConstraintKinds #-}
3 module T4175 where
4
5 import GHC.Exts
6
7 type family A a b
8 type instance A Int Int = ()
9 type instance A (Maybe a) a = a
10 type instance A (B a) b = ()
11
12 data family B a
13 data instance B () = MkB
14
15 class C a where
16 type D a b
17
18 instance C Int where
19 type D Int () = String
20
21 instance C () where
22 type D () () = Bool
23
24 type family E a where
25 E () = Bool
26 E Int = String
27
28 class Z a
29
30 class F (a :: Constraint)
31 instance F (Z a)
32
33 class G (a :: * -> *)
34 instance G B