summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_fail/T15712.hs
blob: 855e96a8f578c5735c4bb83c97ea331f164ef169 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{-# LANGUAGE Haskell2010 #-}
{-# Language RankNTypes    #-}
{-# Language DerivingVia   #-}
{-# Language DeriveFunctor #-}

-- import Control.Monad.Codensity
import Data.Kind

newtype Codensity f a = Codensity (forall xx. (a -> f xx) -> f xx)
  deriving
    (Functor)

newtype GEndo m a = GEndo (m a -> m a)

newtype LogicT m a = LogicT (forall xx. (a -> (m xx -> m xx)) -> (m xx -> m xx))
  deriving
    (Functor)
  via
    (Codensity GEndo)