summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/GivenOverlapping.hs
blob: 68d0dd4714197960e24ac487c3c004675fcd31e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{-# OPTIONS_GHC -fno-warn-redundant-constraints #-}
{-# LANGUAGE FunctionalDependencies, FlexibleContexts #-}

class C a where 

class D a where 
 dop :: a -> a    

instance C a => D [a] where 
 dop = undefined

class J a b | a -> b 
 where j :: a -> b -> () 

instance J Bool Int where 
 j = undefined
   
foo :: D [Int] => ()
foo = j True (head (dop [undefined]))

main = return ()