SCC analysis for instances as well as types/classes
[ghc.git] / testsuite / tests / typecheck / should_compile / tc220.hs
1 {-# LANGUAGE DeriveDataTypeable #-}
2
3 -- See Trac #1033
4
5 module Pointful' where
6
7 import Data.Generics
8 import Control.Monad.State
9
10 data HsExp = HsWildCard deriving( Typeable, Data )
11 data HsName = HsName deriving( Typeable, Data )
12
13 -- rename :: () -> HsExp -> State (HsName, [HsName]) HsExp
14 -- Type sig commented out
15 rename1 = \_ -> everywhereM (mkM (\e -> case e of HsWildCard -> return e))
16
17 rename2 _ = everywhereM (mkM (\e -> case e of HsWildCard -> return e))
18
19 uncomb1 :: State (HsName, [HsName]) HsExp
20 uncomb1 = rename1 () undefined
21
22 uncomb2 :: State (HsName, [HsName]) HsExp
23 uncomb2 = rename2 () undefined
24
25
26