-{-# OPTIONS -w #-}
--- The above warning supression flag is a temporary kludge.
--- While working on this module you are encouraged to remove it and fix
--- any warnings in the module. See
--- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
--- for details
--
-- (c) The University of Glasgow 2002-2006
import UniqSupply
import CostCentre
import StaticFlags
-import PackageConfig
import Panic
import Binary
import SrcLoc
-import Util
import ErrUtils
import Config
import FastMutInt
-- And send the result to the file
writeBinMem bh hi_path
-initBinMemSize = (1024*1024) :: Int
+initBinMemSize :: Int
+initBinMemSize = 1024 * 1024
-- The *host* architecture version:
#include "MachDeps.h"
+binaryInterfaceMagic :: Word32
#if WORD_SIZE_IN_BITS == 32
-binaryInterfaceMagic = 0x1face :: Word32
+binaryInterfaceMagic = 0x1face
#elif WORD_SIZE_IN_BITS == 64
-binaryInterfaceMagic = 0x1face64 :: Word32
+binaryInterfaceMagic = 0x1face64
#endif
-- -----------------------------------------------------------------------------
-> NameCache
-> OnDiskName
-> (NameCache, Name)
-fromOnDiskName arr nc (pid, mod_name, occ) =
+fromOnDiskName _ nc (pid, mod_name, occ) =
let
mod = mkModule pid mod_name
cache = nsNames nc
}
serialiseName :: BinHandle -> Name -> UniqFM (Int,Name) -> IO ()
-serialiseName bh name symtab = do
+serialiseName bh name _ = do
let mod = nameModule name
put_ bh (modulePackageId mod, moduleName mod, nameOccName name)
2 -> do ac <- get bh
ad <- get bh
return (IfaceEqPred ac ad)
+ _ -> panic ("get IfacePredType " ++ show h)
-------------------------------------------------------------------------
-- IfaceExpr and friends
12 -> do m <- get bh
ix <- get bh
return (IfaceTick m ix)
+ _ -> panic ("get IfaceExpr " ++ show h)
instance Binary IfaceConAlt where
put_ bh IfaceDefault = do
3 -> do return IfaceInlineMe
4 -> do ac <- get bh
return (IfaceCoreNote ac)
+ _ -> panic ("get IfaceNote " ++ show h)
-------------------------------------------------------------------------
-- IfaceDecl and friends
put_ bh (occNameFS name)
put_ bh ty
put_ bh idinfo
- put_ bh (IfaceForeign ae af) =
+ put_ _ (IfaceForeign _ _) =
error "Binary.put_(IfaceDecl): IfaceForeign"
put_ bh (IfaceData a1 a2 a3 a4 a5 a6 a7 a8) = do
putByte bh 2
0 -> return NoOverlap
1 -> return OverlapOk
2 -> return Incoherent
+ _ -> panic ("get OverlapFlag " ++ show h)
instance Binary IfaceConDecls where
put_ bh IfAbstractTyCon = putByte bh 0