Merge non-moving garbage collector
[ghc.git] / testsuite / tests / typecheck / should_compile / T13643.hs
1 {-# Language TypeFamilyDependencies #-}
2 {-# Language RankNTypes #-}
3 {-# Language KindSignatures #-}
4 {-# Language DataKinds #-}
5 {-# Language PolyKinds #-}
6 {-# Language GADTs #-}
7
8 import Data.Kind (Type)
9
10 data Code = I
11
12 type family
13 Interp (a :: Code) = (res :: Type) | res -> a where
14 Interp I = Bool
15
16 data T :: forall a. Interp a -> Type where
17 MkNat :: T False
18
19 instance Show (T a) where show _ = "MkNat"
20
21 main = do
22 print MkNat