ghc-exactprint-1.14.0.0: tests/examples/pre-ghc910/T10156.hs
{-# LANGUAGE FlexibleContexts, TypeFamilies #-}
module T10156 where
import Data.Coerce
data Iso a b = Iso (a -> b) (b -> a)
coerceIso :: Coercible a b => Iso a b
coerceIso = Iso coerce coerce
type family F x
f :: (Coercible a (F b), Coercible c (F b)) => a -> b -> c
f x _ = coerce x