Comments about GHC 6.4, differences in parsing
authorLennart Kolmodin <kolmodin@dtek.chalmers.se>
Sun, 14 Jan 2007 11:33:34 +0000 (12:33 +0100)
committerLennart Kolmodin <kolmodin@dtek.chalmers.se>
Sun, 14 Jan 2007 11:33:34 +0000 (12:33 +0100)
GHC 6.4 cannot parse comments that start with "# RULES" if it
actually isn't a rule, so change the disabeling slightly.

binary.cabal
src/Data/Binary/Get.hs
src/Data/Binary/Put.hs

index d51eada..24257ca 100644 (file)
@@ -5,9 +5,11 @@ license-file:    LICENSE
 author:          Lennart Kolmodin <kolmodin@dtek.chalmers.se>
 synopsis:        Binary serialization using lazy ByteStrings
 build-depends:   base, mtl
+-- ghc 6.4 also needs package fps
 exposed-modules: Data.Binary,
                  Data.Binary.Put,
                  Data.Binary.Get
 extensions:      ForeignFunctionInterface,CPP,MultiParamTypeClasses
 hs-source-dirs:  src
 ghc-options:     -O -funbox-strict-fields -Wall -Werror
+-- ghc 6.4 also needs -fallow-undecidable-instances
index 2f6d4ba..1f05341 100644 (file)
@@ -246,9 +246,9 @@ unsafeShiftL_W32 = shiftL
 
 ------------------------------------------------------------------------
 
-{-# RULESAREEVIL
+{-# TRICKY RULES
  "ensureLeft/combine" forall a b.
         ensureLeft a >> ensureLeft b = ensureLeft (max a b)
  #-}
 
-{-# *IGNORE* RULES "readN/combine" forall s1 s2 f1 f2 k.  readN s1 f1 >>= \w1 -> readN s2 f2 >>= \w2 -> k = readN (s1+s2) (\s -> f1 s >>= \w1 -> f2 (L.drop s1 s)) #-}
+{-# TRICKY RULES "readN/combine" forall s1 s2 f1 f2 k.  readN s1 f1 >>= \w1 -> readN s2 f2 >>= \w2 -> k = readN (s1+s2) (\s -> f1 s >>= \w1 -> f2 (L.drop s1 s)) #-}
index 716ac73..0ad8672 100644 (file)
@@ -238,7 +238,7 @@ putWord64le w64 = do
 ------------------------------------------------------------------------
 -- Some nice rules for put 
 
-{-# RULESAREEVIL
+{-# TRICKY RULES
 
 "writeN/combine" forall s1 s2 f1 f2 .
         bindP (writeN s1 f1) (writeN s2 f2) =