projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Adding tick boxes to the interface syntax; fixes #1510
[ghc-hetmet.git]
/
compiler
/
iface
/
BinIface.hs
diff --git
a/compiler/iface/BinIface.hs
b/compiler/iface/BinIface.hs
index
bea0de1
..
d852559
100644
(file)
--- a/
compiler/iface/BinIface.hs
+++ b/
compiler/iface/BinIface.hs
@@
-34,6
+34,7
@@
import Config
import FastMutInt
import Outputable
import FastMutInt
import Outputable
+import Data.List
import Data.Word
import Data.Array
import Data.IORef
import Data.Word
import Data.Array
import Data.IORef
@@
-888,6
+889,10
@@
instance Binary IfaceExpr where
putByte bh 11
put_ bh ie
put_ bh ico
putByte bh 11
put_ bh ie
put_ bh ico
+ put_ bh (IfaceTick m ix) = do
+ putByte bh 12
+ put_ bh m
+ put_ bh ix
get bh = do
h <- getByte bh
case h of
get bh = do
h <- getByte bh
case h of
@@
-927,6
+932,9
@@
instance Binary IfaceExpr where
11 -> do ie <- get bh
ico <- get bh
return (IfaceCast ie ico)
11 -> do ie <- get bh
ico <- get bh
return (IfaceCast ie ico)
+ 12 -> do m <- get bh
+ ix <- get bh
+ return (IfaceTick m ix)
instance Binary IfaceConAlt where
put_ bh IfaceDefault = do
instance Binary IfaceConAlt where
put_ bh IfaceDefault = do
@@
-1062,12
+1070,13
@@
instance Binary IfaceDecl where
put_ bh a6
put_ bh a7
put_ bh a8
put_ bh a6
put_ bh a7
put_ bh a8
- put_ bh (IfaceSyn aq ar as at) = do
+ put_ bh (IfaceSyn a1 a2 a3 a4 a5) = do
putByte bh 3
putByte bh 3
- put_ bh (occNameFS aq)
- put_ bh ar
- put_ bh as
- put_ bh at
+ put_ bh (occNameFS a1)
+ put_ bh a2
+ put_ bh a3
+ put_ bh a4
+ put_ bh a5
put_ bh (IfaceClass a1 a2 a3 a4 a5 a6 a7) = do
putByte bh 4
put_ bh a1
put_ bh (IfaceClass a1 a2 a3 a4 a5 a6 a7) = do
putByte bh 4
put_ bh a1
@@
-1098,12
+1107,13
@@
instance Binary IfaceDecl where
occ <- return $! mkOccNameFS tcName a1
return (IfaceData occ a2 a3 a4 a5 a6 a7 a8)
3 -> do
occ <- return $! mkOccNameFS tcName a1
return (IfaceData occ a2 a3 a4 a5 a6 a7 a8)
3 -> do
- aq <- get bh
- ar <- get bh
- as <- get bh
- at <- get bh
- occ <- return $! mkOccNameFS tcName aq
- return (IfaceSyn occ ar as at)
+ a1 <- get bh
+ a2 <- get bh
+ a3 <- get bh
+ a4 <- get bh
+ a5 <- get bh
+ occ <- return $! mkOccNameFS tcName a1
+ return (IfaceSyn occ a2 a3 a4 a5)
_ -> do
a1 <- get bh
a2 <- get bh
_ -> do
a1 <- get bh
a2 <- get bh
@@
-1220,10
+1230,14
@@
instance Binary IfaceRule where
return (IfaceRule a1 a2 a3 a4 a5 a6 a7)
instance Binary IfaceVectInfo where
return (IfaceRule a1 a2 a3 a4 a5 a6 a7)
instance Binary IfaceVectInfo where
- put_ bh (IfaceVectInfo a1) = do
+ put_ bh (IfaceVectInfo a1 a2 a3) = do
put_ bh a1
put_ bh a1
+ put_ bh a2
+ put_ bh a3
get bh = do
a1 <- get bh
get bh = do
a1 <- get bh
- return (IfaceVectInfo a1)
+ a2 <- get bh
+ a3 <- get bh
+ return (IfaceVectInfo a1 a2 a3)