Improve the "could not find module" error message
[ghc-hetmet.git] / compiler / main / GHC.hs
index 5fcfd1d..0654323 100644 (file)
@@ -226,7 +226,8 @@ import Finder
 import HscMain         ( newHscEnv, hscFileCheck, HscChecked(..) )
 import HscTypes
 import DynFlags
-import SysTools                ( initSysTools, cleanTempFiles, cleanTempFilesExcept )
+import SysTools     ( initSysTools, cleanTempFiles, cleanTempFilesExcept,
+                      cleanTempDirs )
 import Module
 import UniqFM
 import PackageConfig    ( PackageId )
@@ -309,13 +310,15 @@ defaultErrorHandler dflags inner =
 -- handling, but still get the ordinary cleanup behaviour.
 defaultCleanupHandler :: DynFlags -> IO a -> IO a
 defaultCleanupHandler dflags inner = 
-   -- make sure we clean up after ourselves
-   later (unless (dopt Opt_KeepTmpFiles dflags) $ 
-           cleanTempFiles dflags) 
-       -- exceptions will be blocked while we clean the temporary files,
-       -- so there shouldn't be any difficulty if we receive further
-       -- signals.
-   inner
+    -- make sure we clean up after ourselves
+    later (unless (dopt Opt_KeepTmpFiles dflags) $
+               do cleanTempFiles dflags
+                  cleanTempDirs dflags
+          )
+          -- exceptions will be blocked while we clean the temporary files,
+          -- so there shouldn't be any difficulty if we receive further
+          -- signals.
+    inner
 
 
 -- | Initialises GHC.  This must be done /once/ only.  Takes the
@@ -1628,7 +1631,7 @@ preprocessFile dflags src_fn mb_phase (Just (buf, time))
 noModError :: DynFlags -> SrcSpan -> ModuleName -> FindResult -> IO ab
 -- ToDo: we don't have a proper line number for this error
 noModError dflags loc wanted_mod err
-  = throwDyn $ mkPlainErrMsg loc $ cantFindError dflags wanted_mod err
+  = throwDyn $ mkPlainErrMsg loc $ cannotFindModule dflags wanted_mod err
                                
 noHsFileErr loc path
   = throwDyn $ mkPlainErrMsg loc $ text "Can't find" <+> text path
@@ -1847,7 +1850,7 @@ findModule' hsc_env mod_name maybe_pkg =
          case res of
            Found _ m | modulePackageId m /= this_pkg -> return m
                         -- not allowed to be a home module
-           err -> let msg = cantFindError dflags mod_name err in
+           err -> let msg = cannotFindModule dflags mod_name err in
                   throwDyn (CmdLineError (showSDoc msg))
 
 #ifdef GHCI