blob: 007f475c06949ed4629f40d121f6dfbf7d3487db (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
{-# LANGUAGE DataKinds, PolyKinds, TypeFamilies, TypeOperators,
UndecidableInstances #-}
module T9063 where
import Data.Type.Equality
import Data.Proxy
class kproxy ~ 'KProxy => PEq (kproxy :: KProxy a) where
type (:==) (x :: a) (y :: a) :: Bool
type x :== y = x == y
instance PEq ('KProxy :: KProxy Bool)
foo :: Proxy (True :== True) -> Proxy (True == True)
foo = id
|