Resolving dependencies... Configuring parseargs-0.2.0.7... Building parseargs-0.2.0.7... Installed parseargs-0.2.0.7 Configuring ciphersaber2-0.1.1.0... Building ciphersaber2-0.1.1.0... Failed to install ciphersaber2-0.1.1.0 Build log ( /home/builder/.cabal/logs/ciphersaber2-0.1.1.0.log ): cabal: Entering directory '/tmp/cabal-tmp-25320/ciphersaber2-0.1.1.0' Configuring ciphersaber2-0.1.1.0... Building ciphersaber2-0.1.1.0... Preprocessing library ciphersaber2-0.1.1.0... [1 of 1] Compiling Data.CipherSaber2 ( Data/CipherSaber2.hs, dist/build/Data/CipherSaber2.o ) Data/CipherSaber2.hs:54:11: error: • Non type-variable argument in the constraint: MArray (STUArray s) Word8 m (Use FlexibleContexts to permit this) • When checking the inferred type schedStep :: forall (m :: * -> *). MArray (STUArray s) Word8 m => Word8 -> Word8 -> m Word8 In the second argument of ‘($)’, namely ‘do { let nKey = ...; let key' = ...; s <- newListArray (0, 255) [0 .. 255] :: ST s (STUArray s Word8 Word8); let schedStep j i = ...; .... }’ In the second argument of ‘($)’, namely ‘runST $ do { let nKey = ...; let key' = ...; s <- newListArray (0, 255) [0 .. 255] :: ST s (STUArray s Word8 Word8); let schedStep j i = ...; .... }’ Data/CipherSaber2.hs:65:11: error: • Non type-variable argument in the constraint: MArray (STUArray s) Word8 m (Use FlexibleContexts to permit this) • When checking the inferred type keystream :: forall (m :: * -> *) t. (MArray (STUArray s) Word8 m, Num t, Eq t) => t -> Word8 -> Word8 -> m [Word8] In the second argument of ‘($)’, namely ‘do { let nKey = ...; let key' = ...; s <- newListArray (0, 255) [0 .. 255] :: ST s (STUArray s Word8 Word8); let schedStep j i = ...; .... }’ In the second argument of ‘($)’, namely ‘runST $ do { let nKey = ...; let key' = ...; s <- newListArray (0, 255) [0 .. 255] :: ST s (STUArray s Word8 Word8); let schedStep j i = ...; .... }’ cabal: Leaving directory '/tmp/cabal-tmp-25320/ciphersaber2-0.1.1.0' cabal: Error: some packages failed to install: ciphersaber2-0.1.1.0 failed during the building phase. The exception was: ExitFailure 1