Remove the type-checking knot.
[ghc.git] / testsuite / tests / polykinds / T6020.hs
1 {-# LANGUAGE DataKinds, FunctionalDependencies, FlexibleInstances,
2 UndecidableInstances, PolyKinds, KindSignatures,
3 ConstraintKinds, FlexibleContexts #-}
4
5 module T6020 where
6
7 class Id (a :: k) (b :: k) | a -> b
8 instance Id a a
9
10 f :: Id x y => x -> y
11 f = f
12
13 --class Test (x :: a) (y :: a) | x -> y
14 --instance (Id x y, Id y z) => Test x z
15
16 -- (Id x0 y0, Id y0 z0, x~x0, z~z0)
17 -- (Id x y0, Id y0 z, y0~z, y0~y)
18
19 --test :: Test True True => ()
20 --test = ()
21