Add TcRnMonad.newSysLocalIds, and use it
[ghc-hetmet.git] / compiler / typecheck / TcRnDriver.lhs
index 9747c22..875d4f6 100644 (file)
@@ -35,6 +35,7 @@ import RdrHsSyn               ( findSplice )
 import PrelNames       ( runMainIOName, rootMainKey, rOOT_MAIN, mAIN,
                          main_RDR_Unqual )
 import RdrName         ( RdrName, mkRdrUnqual, emptyGlobalRdrEnv )
+import TyCon           ( isOpenTyCon )
 import TcHsSyn         ( zonkTopDecls )
 import TcExpr          ( tcInferRho )
 import TcRnMonad
@@ -231,9 +232,10 @@ tcRnModule hsc_env hsc_src save_rn_syntax
        reportDeprecations (hsc_dflags hsc_env) tcg_env ;
 
                -- Process the export list
-       rn_exports <- rnExports export_ies ;
+       rn_exports <- rnExports export_ies;
         let { liftM2' fn a b = do a' <- a; b' <- b; return (fn a' b') } ;
-        exports <- mkExportNameSet (isJust maybe_mod) (liftM2' (,) rn_exports export_ies) ;
+        exports <- mkExportNameSet (isJust maybe_mod) 
+                                  (liftM2' (,) rn_exports export_ies) ;
 
                -- Check whether the entire module is deprecated
                -- This happens only once per module
@@ -561,6 +563,7 @@ missingBootThing thing
   = ppr thing <+> ptext SLIT("is defined in the hs-boot file, but not in the module")
 bootMisMatch thing boot_decl real_decl
   = ppr thing <+> ptext SLIT("has conflicting definitions in the module and its hs-boot file")
+    $+$ (ppr boot_decl) $+$ (ppr real_decl)
 instMisMatch inst
   = hang (ppr inst)
        2 (ptext SLIT("is defined in the hs-boot file, but not in the module"))