summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_run/tcrun034.hs
blob: 60b70df89c7d07e4dc429caf96e7d69e962b305d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{-# LANGUAGE ExplicitForAll, TypeOperators #-}

module Main where

-- Infix type operator
f1 :: forall m a b. (a `m` b) -> ((a `m` b) -> a) -> a
f1 x g = g x

-- Infix type operator..  Commented out because we no longer 
-- infix operators to be variables; they are type constructors
-- f2 :: forall a b (-->). (a --> b) -> ((a --> b) -> b) -> b
-- f2 x g = g x

main = do { print (f1 (3,5) fst) 
--        ; print (f2 (3,5) snd)
          }