blob: 7a05cb8e63bb3ec307a39172dfdcda67196b2a60 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
{-# LANGUAGE ImpredicativeTypes, RankNTypes #-}
module T9730 where
class A a where
class B b where
class C c where
a2b :: (forall a. A a => a) -> (forall b. B b => b)
a2b = undefined
b2c :: (forall b. B b => b) -> (forall c. C c => c)
b2c = undefined
a2c :: (forall a. A a => a) -> (forall c. C c => c)
a2c = b2c . a2b
|