X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=compiler%2FsimplStg%2FSimplStg.lhs;h=e0d13c67702fcf157180ca33957c590a2515b7a9;hb=f555abffd676544cd13d022bf1eb829e63f7aebe;hp=072737a92298ea087afb8bad36350e0cae29d2a9;hpb=17b297d97d327620ed6bfab942f8992b2446f1bf;p=ghc-hetmet.git diff --git a/compiler/simplStg/SimplStg.lhs b/compiler/simplStg/SimplStg.lhs index 072737a..e0d13c6 100644 --- a/compiler/simplStg/SimplStg.lhs +++ b/compiler/simplStg/SimplStg.lhs @@ -4,15 +4,10 @@ \section[SimplStg]{Driver for simplifying @STG@ programs} \begin{code} -{-# OPTIONS_GHC -w #-} --- The above warning supression flag is a temporary kludge. --- While working on this module you are encouraged to remove it and fix --- any warnings in the module. See --- http://hackage.haskell.org/trac/ghc/wiki/WorkingConventions#Warnings --- for details - module SimplStg ( stg2stg ) where +-- XXX This define is a bit of a hack, and should be done more nicely +#define FAST_STRING_NOT_NEEDED 1 #include "HsVersions.h" import StgSyn @@ -63,7 +58,7 @@ stg2stg dflags module_name binds where stg_linter = if dopt Opt_DoStgLinting dflags then lintStgBindings - else ( \ whodunnit binds -> binds ) + else ( \ _whodunnit binds -> binds ) ------------------------------------------- do_stg_pass (binds, us, ccs) to_do @@ -96,7 +91,8 @@ stg2stg dflags module_name binds -- add to description of what's happened (reverse order) -- here so it can be inlined... -foldl_mn f z [] = return z +foldl_mn :: (b -> a -> IO b) -> b -> [a] -> IO b +foldl_mn _ z [] = return z foldl_mn f z (x:xs) = f z x >>= \ zz -> foldl_mn f zz xs \end{code}