summaryrefslogtreecommitdiff
path: root/testsuite/tests/typecheck/should_compile/tc074.hs
blob: f455d41b6ed72b5cdcfe8cc8028126978ac4969f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
module ShouldSucceed where

data T a = D (B a) | C
data B b = X | Y b

instance (Eq a) => Eq (T a) where
 (D x) == (D y) = x == y
 C == C = True
 a == b = False

 a /= b = not (a == b)

instance (Eq b) => Eq (B b) where
 X == X = True
 (Y a) == (Y b) = a == b
 a == b = False

 a /= b = not (a == b)