Big tidy-up of deriving code
[ghc-hetmet.git] / compiler / typecheck / TcSplice.lhs
index b71294f..a99bf8b 100644 (file)
@@ -52,6 +52,7 @@ import ErrUtils
 import SrcLoc
 import Outputable
 import Unique
+import DynFlags
 import PackageConfig
 import BasicTypes
 import Panic
@@ -76,6 +77,7 @@ import Control.Monad  ( liftM )
 tcSpliceDecls :: LHsExpr Name -> TcM [LHsDecl RdrName]
 tcSpliceExpr  :: HsSplice Name -> BoxyRhoType -> TcM (HsExpr TcId)
 kcSpliceType  :: HsSplice Name -> TcM (HsType Name, TcKind)
+       -- None of these functions add constraints to the LIE
 
 #ifndef GHCI
 tcSpliceExpr n e ty = pprPanic "Cant do tcSpliceExpr without GHCi" (ppr e)
@@ -362,8 +364,11 @@ runMeta :: (SrcSpan -> th_syn -> Either Message hs_syn)
        -> TcM hs_syn           -- Of type t
 runMeta convert expr
   = do {       -- Desugar
+#if defined(GHCI) && defined(DEBUGGER)
+         ds_expr <- unsetOptM Opt_Debugging $ initDsTc (dsLExpr expr)
+#else 
          ds_expr <- initDsTc (dsLExpr expr)
-
+#endif
        -- Compile and link it; might fail if linking fails
        ; hsc_env <- getTopEnv
        ; src_span <- getSrcSpanM