summaryrefslogtreecommitdiff
path: root/compiler/GHC/Tc/Utils
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Tc/Utils')
-rw-r--r--compiler/GHC/Tc/Utils/Monad.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/GHC/Tc/Utils/Monad.hs b/compiler/GHC/Tc/Utils/Monad.hs
index 6fb31e2d7d..a8f6cbbc19 100644
--- a/compiler/GHC/Tc/Utils/Monad.hs
+++ b/compiler/GHC/Tc/Utils/Monad.hs
@@ -1033,8 +1033,9 @@ mkLongErrAt :: SrcSpan -> SDoc -> SDoc -> TcRn (MsgEnvelope DiagnosticMessage)
mkLongErrAt loc msg extra
= do { printer <- getPrintUnqualified ;
unit_state <- hsc_units <$> getTopEnv ;
+ dflags <- getDynFlags ;
let msg' = pprWithUnitState unit_state msg in
- return $ mkLongMsgEnvelope ErrorWithoutFlag loc printer msg' extra }
+ return $ mkLongMsgEnvelope dflags ErrorWithoutFlag loc printer msg' extra }
mkDecoratedSDocAt :: DiagnosticReason
-> SrcSpan
@@ -1048,11 +1049,12 @@ mkDecoratedSDocAt :: DiagnosticReason
mkDecoratedSDocAt reason loc important context extra
= do { printer <- getPrintUnqualified ;
unit_state <- hsc_units <$> getTopEnv ;
+ dflags <- getDynFlags ;
let f = pprWithUnitState unit_state
errDoc = [important, context, extra]
errDoc' = DiagnosticMessage (mkDecorated $ map f errDoc) reason
in
- return $ mkMsgEnvelope (defaultReasonSeverity reason) loc printer errDoc' }
+ return $ mkMsgEnvelope dflags loc printer errDoc' }
addLongErrAt :: SrcSpan -> SDoc -> SDoc -> TcRn ()
addLongErrAt loc msg extra = mkLongErrAt loc msg extra >>= reportDiagnostic
@@ -1558,7 +1560,8 @@ add_diagnostic reason msg extra_info
add_diagnostic_at :: DiagnosticReason -> SrcSpan -> SDoc -> SDoc -> TcRn ()
add_diagnostic_at reason loc msg extra_info
= do { printer <- getPrintUnqualified ;
- let { dia = mkLongMsgEnvelope reason
+ dflags <- getDynFlags ;
+ let { dia = mkLongMsgEnvelope dflags reason
loc printer
msg extra_info } ;
reportDiagnostic dia }