Refactor: Remove bind2
authorJoachim Breitner <mail@joachim-breitner.de>
Mon, 1 Jul 2013 11:35:00 +0000 (13:35 +0200)
committerJoachim Breitner <mail@joachim-breitner.de>
Mon, 1 Jul 2013 11:35:00 +0000 (13:35 +0200)
GHC/NT/Plugin.hs

index 27f24c3..a91b832 100644 (file)
@@ -42,7 +42,7 @@ ntPass g | moduleNameString (moduleName (mg_module g)) == "GHC.NT" = do
 ntPass g = return g
 
 nt2Pass :: ModGuts -> CoreM ModGuts
-nt2Pass = bindsOnlyPass $ mapM bind2
+nt2Pass = bindsOnlyPass $ mapM (traverseBind replaceCreateNT)
 
 createNTTyCon :: Module -> TyCon -> CoreM TyCon
 createNTTyCon mod oldTyCon = do
@@ -191,11 +191,6 @@ bind _ b = do
     --putMsgS $ showSDoc dflags (ppr b)
     return b
 
-bind2 :: CoreBind -> CoreM CoreBind
-bind2 (NonRec v e) = NonRec v <$> traverse replaceCreateNT e
-bind2 (Rec binds) = Rec <$> mapM (\(v,e) -> (\e' -> (v,e')) <$> traverse replaceCreateNT e) binds
-
-
 replaceCreateNT :: CoreExpr -> CoreM (Maybe CoreExpr)
 replaceCreateNT e@((App (App (Var f) (Type ta)) (Type tb)))
     | getOccString f == "createNT" = do