Peter Simons 2012-03-05 23:32:24 +00:00
parent dbe98be6a1
commit 1f847aa4c5
2 changed files with 28 additions and 0 deletions

View file

@ -0,0 +1,27 @@
--- a/Data/Digest/SHA2.hs
+++ b/Data/Digest/SHA2.hs
@@ -106,7 +106,7 @@
data Hash384 = Hash384 !Word64 !Word64 !Word64 !Word64 !Word64 !Word64 deriving (Eq, Ord)
data Hash224 = Hash224 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 deriving (Eq, Ord)
-instance (Integral a) => Show (Hash8 a) where
+instance (Integral a, Show a) => Show (Hash8 a) where
showsPrec _ (Hash8 a b c d e f g h) =
(showHex a) . (' ':) .
(showHex b) . (' ':) .
@@ -146,7 +146,7 @@
where
bs = bitSize (head r)
-instance (Integral h, Bits h) => Hash (Hash8 h) where
+instance (Integral h, Bits h, Show h) => Hash (Hash8 h) where
toOctets (Hash8 x0 x1 x2 x3 x4 x5 x6 x7) = bitsToOctets =<< [x0, x1, x2, x3, x4, x5, x6, x7]
instance Hash Hash384 where
@@ -282,4 +282,4 @@
-- Test with:
-- ghc -no-recomp -O --make Data/Digest/SHA2.hs -main-is Data.Digest.SHA2.moduleTest -o moduleTest && ./moduleTest && rm moduleTest
-moduleTest = runTestTT test_sha2
\ No newline at end of file
+moduleTest = runTestTT test_sha2

View file

@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
isLibrary = true;
isExecutable = true;
buildDepends = [ HUnit QuickCheck random ];
patches = [ ./class-constraints.diff ];
meta = {
description = "Collects together existing Haskell cryptographic functions into a package";
license = "unknown";