add default cases
[ghc-hetmet.git] / compiler / main / HscTypes.lhs
index ee5438b..e67de3b 100644 (file)
@@ -95,7 +95,7 @@ import IfaceSyn               ( IfaceInst, IfaceRule, IfaceDecl(ifName) )
 
 import FiniteMap       ( FiniteMap )
 import CoreSyn         ( CoreRule )
-import Maybes          ( orElse, expectJust, expectJust )
+import Maybes          ( orElse, expectJust )
 import Outputable
 import SrcLoc          ( SrcSpan, Located )
 import UniqSupply      ( UniqSupply )
@@ -172,9 +172,11 @@ data HscEnv
                -- sucking in interface files.  They cache the state of
                -- external interface files, in effect.
 
-       hsc_FC  :: {-# UNPACK #-} !(IORef FinderCache)
+       hsc_FC  :: {-# UNPACK #-} !(IORef FinderCache),
                -- The finder's cache.  This caches the location of modules,
                -- so we don't have to search the filesystem multiple times.
+        hsc_global_rdr_env :: GlobalRdrEnv,
+        hsc_global_type_env :: TypeEnv
  }
 
 hscEPS :: HscEnv -> IO ExternalPackageState
@@ -1075,8 +1077,10 @@ isInterpretable = not . isObject
 nameOfObject (DotO fn)   = fn
 nameOfObject (DotA fn)   = fn
 nameOfObject (DotDLL fn) = fn
+nameOfObject other       = pprPanic "nameOfObject" (ppr other)
 
 byteCodeOfObject (BCOs bc) = bc
+byteCodeOfObject other     = pprPanic "byteCodeOfObject" (ppr other)
 \end{code}