Resolving dependencies... Downloading snappy-0.2.0.2... Configuring mtl-2.2.1... Configuring snappy-0.2.0.2... Building mtl-2.2.1... Building snappy-0.2.0.2... Installed snappy-0.2.0.2 Installed mtl-2.2.1 Downloading qudb-0.0.1... Configuring qudb-0.0.1... Building qudb-0.0.1... Failed to install qudb-0.0.1 Build log ( /home/builder/.cabal/logs/qudb-0.0.1.log ): cabal: Entering directory '/tmp/cabal-tmp-23041/qudb-0.0.1' Configuring qudb-0.0.1... Building qudb-0.0.1... Preprocessing executable 'qudb' for qudb-0.0.1... [1 of 8] Compiling Database.QUDB.Utils ( Database/QUDB/Utils.hs, dist/build/qudb/qudb-tmp/Database/QUDB/Utils.o ) [2 of 8] Compiling Database.QUDB.Scanner ( dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs, dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.o ) dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:361:32: error: • Couldn't match expected type ‘[AlexAcc ([Char] -> Token) t]’ with actual type ‘e0’ because type variable ‘t’ would escape its scope This (rigid, skolem) type variable is bound by the inferred type of alex_scan_tkn :: t -> AlexInput -> Int# -> AlexInput -> Int# -> AlexLastAcc ([Char] -> Token) -> (AlexLastAcc ([Char] -> Token), (Char, [Byte], String)) at dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:(358,1)-(398,47) • In the first argument of ‘check_accs’, namely ‘(alex_accept `quickIndex` (I# (s)))’ In the expression: (check_accs (alex_accept `quickIndex` (I# (s)))) In an equation for ‘new_acc’: new_acc = (check_accs (alex_accept `quickIndex` (I# (s)))) • Relevant bindings include check_accs :: [AlexAcc ([Char] -> Token) t] -> AlexLastAcc ([Char] -> Token) (bound at dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:389:9) user :: t (bound at dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:358:15) alex_scan_tkn :: t -> AlexInput -> Int# -> AlexInput -> Int# -> AlexLastAcc ([Char] -> Token) -> (AlexLastAcc ([Char] -> Token), (Char, [Byte], String)) (bound at dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:358:1) dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:372:17: error: • Pattern bindings containing unlifted types should use an outermost bang pattern: ((I# (ord_c))) = fromIntegral c • In the expression: let (base) = alexIndexInt32OffAddr alex_base s ((I# (ord_c))) = fromIntegral c (offset) = (base +# ord_c) .... in case new_s of { -1# -> (new_acc, input) _ -> alex_scan_tkn user orig_input (if c < 128 || c >= 192 then (len +# 1#) else len) new_input new_s new_acc } In a case alternative: Just (c, new_input) -> let (base) = alexIndexInt32OffAddr alex_base s ((I# (ord_c))) = fromIntegral c .... in case new_s of { -1# -> (new_acc, input) _ -> alex_scan_tkn user orig_input (if c < 128 || c >= 192 then (len +# 1#) else len) new_input new_s new_acc } In the second argument of ‘seq’, namely ‘case alexGetByte input of { Nothing -> (new_acc, input) Just (c, new_input) -> let (base) = ... .... in case new_s of { -1# -> ... _ -> alex_scan_tkn user orig_input (if c < 128 || c >= 192 then (len +# 1#) else len) new_input new_s new_acc } }’ dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:376:31: error: • Couldn't match expected type ‘Bool’ with actual type ‘Int#’ • In the first argument of ‘(&&)’, namely ‘(offset >=# 0#)’ In the expression: (offset >=# 0#) && (check ==# ord_c) In the expression: if (offset >=# 0#) && (check ==# ord_c) then alexIndexInt16OffAddr alex_table offset else alexIndexInt16OffAddr alex_deflt s dist/build/qudb/qudb-tmp/Database/QUDB/Scanner.hs:376:50: error: • Couldn't match expected type ‘Bool’ with actual type ‘Int#’ • In the second argument of ‘(&&)’, namely ‘(check ==# ord_c)’ In the expression: (offset >=# 0#) && (check ==# ord_c) In the expression: if (offset >=# 0#) && (check ==# ord_c) then alexIndexInt16OffAddr alex_table offset else alexIndexInt16OffAddr alex_deflt s cabal: Leaving directory '/tmp/cabal-tmp-23041/qudb-0.0.1' cabal: Error: some packages failed to install: qudb-0.0.1 failed during the building phase. The exception was: ExitFailure 1