Message, mkLocMessage, printError,
ErrMsg, WarnMsg,
- errMsgSpans, errMsgShortDoc, errMsgExtraInfo,
+ errMsgSpans, errMsgContext, errMsgShortDoc, errMsgExtraInfo,
Messages, errorsFound, emptyMessages,
mkErrMsg, mkWarnMsg, mkPlainErrMsg, mkLongErrMsg,
printErrorsAndWarnings, pprBagOfErrors, pprBagOfWarnings,
dumpIfSet, dumpIfSet_core, dumpIfSet_dyn, dumpIfSet_dyn_or, mkDumpDoc,
showPass,
- -- * Messages during compilation
+ -- * Messages during compilation
setMsgHandler,
putMsg,
compilationProgressMsg,
import Outputable
import qualified Pretty
import SrcLoc ( srcSpanStart )
-import CmdLineOpts ( DynFlags(..), DynFlag(..), dopt,
- opt_ErrorSpans )
-
-import List ( replicate, sortBy )
+import DynFlags ( DynFlags(..), DynFlag(..), dopt )
+import StaticFlags ( opt_ErrorSpans )
import System ( ExitCode(..), exitWith )
import DATA_IOREF
-import IO ( hPutStrLn, stderr, stdout )
+import IO ( hPutStrLn, stderr )
-- -----------------------------------------------------------------------------
mkLongErrMsg locn print_unqual msg extra
= ErrMsg [locn] print_unqual msg extra
--- A long (multi-line) error message, with context to tell us whether
--- to qualify names in the message or not.
-mkLongMultiLocErrMsg :: [SrcSpan] -> PrintUnqualified -> Message -> Message -> ErrMsg
-mkLongMultiLocErrMsg locns print_unqual msg extra
- = ErrMsg locns print_unqual msg extra
-
mkWarnMsg :: SrcSpan -> PrintUnqualified -> Message -> WarnMsg
mkWarnMsg = mkErrMsg
-mkLongWarnMsg :: SrcSpan -> PrintUnqualified -> Message -> Message -> WarnMsg
-mkLongWarnMsg = mkLongErrMsg
-
type Messages = (Bag WarnMsg, Bag ErrMsg)
emptyMessages :: Messages
compilationPassMsg dflags msg
= ifVerbose dflags 2 (putMsg msg)
-debugTraceMsg :: DynFlags -> String -> IO ()
-debugTraceMsg dflags msg
- = ifVerbose dflags 2 (putMsg msg)
+debugTraceMsg :: DynFlags -> Int -> String -> IO ()
+debugTraceMsg dflags val msg
+ = ifVerbose dflags val (putMsg msg)
GLOBAL_VAR(msgHandler, hPutStrLn stderr, (String -> IO ()))