summaryrefslogtreecommitdiff
path: root/testsuite/tests/deriving/should_compile/drv001.hs
blob: 694af6a50f9c1a14b1394dc236525a02e6c41357 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
-- !!! canonical weird example for "deriving"
module ShouldSucceed where

data X a b
  = C1 (T a)
  | C2 (Y b)
  | C3 (X b a)
  deriving (Read, Show)

data Y b
  = D1
  | D2 (X Int b)
  deriving (Read, Show)

data T a
  = E1

instance Eq a => Show (T a) where
    showsPrec = error "show"
instance Eq a => Read (T a) where
    readsPrec = error "read"