summaryrefslogtreecommitdiff
path: root/testsuite/tests/impredicative/T9730.hs
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