diff -ru orig/src/Data/Bytes/Serial.hs new/src/Data/Bytes/Serial.hs --- orig/src/Data/Bytes/Serial.hs 2014-02-22 21:21:31.076773095 +0200 +++ new/src/Data/Bytes/Serial.hs 2014-02-22 21:21:29.000000000 +0200 @@ -58,7 +58,9 @@ import Data.Int import Data.Bits import Data.Monoid as Monoid +#if MIN_VERSION_base(4, 6, 0) import Data.Ord (Down(..)) +#endif import Data.Functor.Identity as Functor import Data.Functor.Constant as Functor import Data.Functor.Product as Functor @@ -475,9 +477,11 @@ serialize = serialize . (fromIntegral::Int -> Int8) . fromEnum deserialize = (toEnum . (fromIntegral::Int8 -> Int)) `liftM` deserialize +#if MIN_VERSION_base(4, 6, 0) instance Serial a => Serial (Down a) where serialize (Down a) = serialize a deserialize = Down `liftM` deserialize +#endif instance Serial Version where serialize (Version vb ts) = serialize (fmap VarInt vb, ts)