\section[GHC_Main]{Main driver for Glasgow Haskell compiler}
\begin{code}
+{-# OPTIONS -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/Commentary/CodingStyle#Warnings
+-- for details
+
module HscMain
( newHscEnv, hscCmmFile
, hscFileCheck
HaddockModInfo )
import CoreSyn
import SrcLoc ( Located(..) )
-import StringBuffer ( hGetStringBuffer, stringToStringBuffer )
+import StringBuffer
import Parser
import Lexer
import SrcLoc ( mkSrcLoc )
------------------ Code generation ------------------
abstractC <- {-# SCC "CodeGen" #-}
codeGen dflags this_mod data_tycons
- foreign_stubs dir_imps cost_centre_info
+ dir_imps cost_centre_info
stg_binds hpc_info
------------------ Convert to CPS --------------------
--continuationC <- cmmCPS dflags abstractC >>= cmmToRawCmm
-- RENAME and TYPECHECK
-------------------
(tc_msgs, maybe_tc_result)
- <- _scc_ "Typecheck-Rename"
+ <- {-# SCC "Typecheck-Rename" #-}
tcRnModule hsc_env (ms_hsc_src mod_summary)
True{-save renamed syntax-}
rdr_module
ml_obj_file = panic "hscCmmFile: no obj file" }
+myParseModule :: DynFlags -> FilePath -> Maybe StringBuffer
+ -> IO (Either ErrMsg (Located (HsModule RdrName)))
myParseModule dflags src_filename maybe_src_buf
= -------------------------- Parser ----------------
showPass dflags "Parser" >>