6693db70d94a446bff3bed59803ff6f9deb06130
[ghc-hetmet.git] / ghc / tests / stranal / should_compile / syn.hs
1 -- !!! THIS TEST IS FOR TYPE SYNONIMS AND FACTORISATION IN THEIR PRESENCE.
2
3 module Test where
4 data M a = A | B a (M a)
5 data L a = N | C a (Syn a)
6 type Syn b = L b
7
8 idL :: L (Syn c) -> L (Syn c)
9 idL N       = N
10 idL (C x l) = C x (idL l) 
11
12 idM:: M (L (Syn x)) -> M (L (Syn x))
13 idM A       = A
14 idM (B x l) = B (idL x) (idM l) 
15