#include "HsVersions.h"
-import IO ( hPutStr, hPutStrLn, stdout )
-
import CoreSyn
import CoreFVs ( idFreeVars )
import CoreUtils ( findDefault, exprOkForSpeculation, coreBindsSize, mkPiType )
import Subst ( substTyWith )
import Name ( getSrcLoc )
import PprCore
-import ErrUtils ( doIfSet, dumpIfSet_core, ghcExit, Message, showPass,
+import ErrUtils ( dumpIfSet_core, ghcExit, Message, showPass,
addErrLocHdrLine )
import SrcLoc ( SrcLoc, noSrcLoc )
import Type ( Type, tyVarsOfType, eqType,
import TyCon ( isPrimTyCon )
import BasicTypes ( RecFlag(..), isNonRec )
import CmdLineOpts
-import Maybe
-import Util ( notNull )
import Outputable
+#ifdef DEBUG
+import Util ( notNull )
+#endif
+
+import Maybe
+import IO ( hPutStrLn, stderr )
+
infixr 9 `thenL`, `seqL`
\end{code}
lintCoreBindings dflags whoDunnit binds
= case (initL (lint_binds binds)) of
- Nothing -> done_lint
+ Nothing -> showPass dflags ("Core Linted result of " ++ whoDunnit)
Just bad_news -> printDump (display bad_news) >>
ghcExit 1
where
returnL ()
lint_bind (NonRec bndr rhs) = lintSingleBinding NonRecursive (bndr,rhs)
- done_lint = doIfSet (verbosity dflags >= 2)
- (hPutStr stdout ("*** Core Linted result of " ++ whoDunnit ++ "\n"))
-
display bad_news
= vcat [ text ("*** Core Lint Errors: in result of " ++ whoDunnit ++ " ***"),
bad_news,