Warning fix for unused and redundant imports
[ghc-hetmet.git] / compiler / iface / LoadIface.lhs
index 00e9e7a..7fa2f1f 100644 (file)
@@ -19,7 +19,7 @@ module LoadIface (
 #include "HsVersions.h"
 
 import {-# SOURCE #-}  TcIface( tcIfaceDecl, tcIfaceRules, tcIfaceInst, 
-                                tcIfaceFamInst )
+                                tcIfaceFamInst, tcIfaceVectInfo )
 
 import DynFlags
 import IfaceSyn
@@ -38,7 +38,6 @@ import InstEnv
 import FamInstEnv
 import Name
 import NameEnv
-import NameSet
 import MkId
 import Module
 import OccName
@@ -52,7 +51,6 @@ import Outputable
 import BinIface
 import Panic
 
-import Control.Monad (when)
 import Data.List
 import Data.Maybe
 import Data.IORef
@@ -239,6 +237,8 @@ loadInterface doc_str mod from
        ; new_eps_insts     <- mapM tcIfaceInst (mi_insts iface)
        ; new_eps_fam_insts <- mapM tcIfaceFamInst (mi_fam_insts iface)
        ; new_eps_rules     <- tcIfaceRules ignore_prags (mi_rules iface)
+        ; new_eps_vect_info <- tcIfaceVectInfo mod (mkNameEnv new_eps_decls) 
+                                               (mi_vect_info iface)
 
        ; let { final_iface = iface {   
                                mi_decls     = panic "No mi_decls in PIT",
@@ -246,11 +246,6 @@ loadInterface doc_str mod from
                                mi_fam_insts = panic "No mi_fam_insts in PIT",
                                mi_rules     = panic "No mi_rules in PIT"
                               }
-              ; new_eps_vect_info =
-                  VectInfo {
-                    vectInfoCCVar = mkNameSet 
-                                     (ifaceVectInfoCCVar . mi_vect_info $ iface)
-                  }     
                }
 
        ; updateEps_  $ \ eps -> 
@@ -587,6 +582,7 @@ pprModIface iface
        , vcat (map ppr (mi_insts iface))
        , vcat (map ppr (mi_fam_insts iface))
        , vcat (map ppr (mi_rules iface))
+        , pprVectInfo (mi_vect_info iface)
        , pprDeprecs (mi_deprecs iface)
        ]
   where
@@ -659,6 +655,10 @@ pprFixities fixes = ptext SLIT("fixities") <+> pprWithCommas pprFix fixes
                  where
                    pprFix (occ,fix) = ppr fix <+> ppr occ 
 
+pprVectInfo :: IfaceVectInfo -> SDoc
+pprVectInfo (IfaceVectInfo names) = 
+  ptext SLIT("Closured converted:") <+> hsep (map ppr names)
+
 pprDeprecs NoDeprecs       = empty
 pprDeprecs (DeprecAll txt)  = ptext SLIT("Deprecate all") <+> doubleQuotes (ftext txt)
 pprDeprecs (DeprecSome prs) = ptext SLIT("Deprecate") <+> vcat (map pprDeprec prs)