Resolving dependencies... Configuring bytestring-mmap-0.2.2... Configuring extensible-exceptions-0.1.1.4... Building extensible-exceptions-0.1.1.4... Building bytestring-mmap-0.2.2... Installed extensible-exceptions-0.1.1.4 Configuring lcs-0.2... Configuring mmap-0.5.9... Installed bytestring-mmap-0.2.2 Building mmap-0.5.9... Building lcs-0.2... Configuring mtl-2.2.1... Failed to install lcs-0.2 Build log ( /home/builder/.cabal/logs/lcs-0.2.log ): cabal: Entering directory '/tmp/cabal-tmp-2978/lcs-0.2' [1 of 1] Compiling Main ( /tmp/cabal-tmp-2978/lcs-0.2/dist/setup/setup.hs, /tmp/cabal-tmp-2978/lcs-0.2/dist/setup/Main.o ) Linking /tmp/cabal-tmp-2978/lcs-0.2/dist/setup/setup ... Configuring lcs-0.2... Warning: No 'build-type' specified. If you do not need a custom Setup.hs or ./configure script then use 'build-type: Simple'. Building lcs-0.2... Preprocessing library lcs-0.2... [1 of 3] Compiling Data.List.LCS.Simple ( Data/List/LCS/Simple.hs, dist/build/Data/List/LCS/Simple.o ) [2 of 3] Compiling Data.List.LCS.HuntSzymanski ( Data/List/LCS/HuntSzymanski.hs, dist/build/Data/List/LCS/HuntSzymanski.o ) Data/List/LCS/HuntSzymanski.hs:146:9: error: • Non type-variable argument in the constraint: MArray (STArray s) [Int] m (Use FlexibleContexts to permit this) • When checking the inferred type add_to_matchlist :: forall (m :: * -> *) a. (MArray (STArray s) [Int] m, Ord a) => [(a, [Int])] -> [(a, [Int])] -> m () In the expression: do { let xs' = map (\ sns -> ...) $ groupBy eqFst $ sort $ zip xs ... ys' = map (\ sns -> ...) $ groupBy eqFst $ sort $ zip ys ... ....; add_to_matchlist xs' ys' } In an equation for ‘mk_matchlist’: mk_matchlist matchlist xs ys = do { let xs' = ... ....; add_to_matchlist xs' ys' } Data/List/LCS/HuntSzymanski.hs:180:9: error: • Non type-variable argument in the constraint: MArray (STArray s) [Int] m (Use FlexibleContexts to permit this) • When checking the inferred type loop_j :: forall b (m :: * -> *). MArray (STArray s) [Int] m => Int -> m b In the expression: do { let loop_i = sequence_ ... loop_j i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); unsafeRead revres (succ_l - 1) } In an equation for ‘lcs''’: lcs'' matchlist lastl kk revres max_xs max_ys minmax = do { let loop_i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); .... } Data/List/LCS/HuntSzymanski.hs:183:9: error: • Non type-variable argument in the constraint: MArray (STArray s) [Int] m (Use FlexibleContexts to permit this) • When checking the inferred type with_js :: forall (m :: * -> *). (MArray (STArray s) [Int] m, MArray (STUArray s) Int m) => Int -> [Int] -> Int -> m () In the expression: do { let loop_i = sequence_ ... loop_j i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); unsafeRead revres (succ_l - 1) } In an equation for ‘lcs''’: lcs'' matchlist lastl kk revres max_xs max_ys minmax = do { let loop_i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); .... } Data/List/LCS/HuntSzymanski.hs:195:9: error: • Non type-variable argument in the constraint: MArray (STUArray s) Int m (Use FlexibleContexts to permit this) • When checking the inferred type find_l :: forall (m :: * -> *) t. MArray (STUArray s) Int m => Int -> Int -> t -> m Int In the expression: do { let loop_i = sequence_ ... loop_j i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); unsafeRead revres (succ_l - 1) } In an equation for ‘lcs''’: lcs'' matchlist lastl kk revres max_xs max_ys minmax = do { let loop_i = ... ....; loop_i; succ_l <- find_l max_ys 1 (minmax + 1); .... } Data/List/LCS/HuntSzymanski.hs:196:16: error: • Non type-variable argument in the constraint: MArray (STUArray s) Int m (Use FlexibleContexts to permit this) • When checking the inferred type f :: forall (m :: * -> *). MArray (STUArray s) Int m => Int -> Int -> m Int In the expression: let f x z | x + 1 == z = return z | otherwise = let ... in ... in j `seq` do { q1 <- unsafeRead kk x0; if j <= q1 then return x0 else f x0 z0 } In an equation for ‘find_l’: find_l j x0 z0 = let f x z | x + 1 == z = return z | otherwise = ... in j `seq` do { q1 <- unsafeRead kk x0; if j <= q1 then return x0 else f x0 z0 } cabal: Leaving directory '/tmp/cabal-tmp-2978/lcs-0.2' Configuring zlib-0.6.1.2... Installed mmap-0.5.9 Building mtl-2.2.1... Building zlib-0.6.1.2... Installed mtl-2.2.1 Installed zlib-0.6.1.2 cabal: Error: some packages failed to install: hashed-storage-0.3.2 depends on lcs-0.2 which failed to install. lcs-0.2 failed during the building phase. The exception was: ExitFailure 1