import RnMonad ( RnNameSupply, getIfaceFixities, Fixities, InterfaceDetails )
import Bag ( isEmptyBag )
-import ErrUtils ( Message,
- pprBagOfErrors, dumpIfSet
- )
+import ErrUtils ( Message, printErrorsAndWarnings, dumpIfSet )
import Id ( Id, idType )
import Module ( pprModuleName )
import Name ( Name, nameUnique, isLocallyDefined, NamedThing(..) )
= initTc us initEnv (tcModule rn_name_supply (getIfaceFixities iface_det) mod)
>>= \ (maybe_result, warns, errs) ->
- print_errs warns >>
- print_errs errs >>
+ printErrorsAndWarnings errs warns >>
-- write the thin-air Id map
(case maybe_result of
pp_rules rs = vcat [ptext SLIT("{-# RULES"),
nest 4 (vcat (map ppr rs)),
ptext SLIT("#-}")]
-
-print_errs errs
- | isEmptyBag errs = return ()
- | otherwise = printErrs (pprBagOfErrors errs)
\end{code}
The internal monster:
-> TcM s TcResults -- output
tcModule rn_name_supply fixities
- (HsModule mod_name verion exports imports decls src_loc)
+ (HsModule mod_name verion exports imports decls _ src_loc)
= tcAddSrcLoc src_loc $ -- record where we're starting
fixTc (\ ~(unf_env ,_) ->