Resolving dependencies... Starting composition-prelude-3.0.0.2 Starting clock-0.8.2 Starting colour-2.3.6 Starting microlens-0.4.12.0 Building composition-prelude-3.0.0.2 Building colour-2.3.6 Building clock-0.8.2 Building microlens-0.4.12.0 Completed composition-prelude-3.0.0.2 Starting prettyprinter-1.7.1 Building prettyprinter-1.7.1 Completed clock-0.8.2 Starting splitmix-0.1.0.3 Building splitmix-0.1.0.3 Completed microlens-0.4.12.0 Starting transformers-compat-0.7 Building transformers-compat-0.7 Completed splitmix-0.1.0.3 Starting extra-1.7.10 Building extra-1.7.10 Completed colour-2.3.6 Starting random-1.2.1 Completed transformers-compat-0.7 Starting ansi-terminal-0.11 Building random-1.2.1 Building ansi-terminal-0.11 Completed prettyprinter-1.7.1 Starting microlens-mtl-0.2.0.1 Building microlens-mtl-0.2.0.1 Completed extra-1.7.10 Completed ansi-terminal-0.11 Starting ansi-wl-pprint-0.6.9 Completed microlens-mtl-0.2.0.1 Building ansi-wl-pprint-0.6.9 Completed ansi-wl-pprint-0.6.9 Starting optparse-applicative-0.16.1.0 Building optparse-applicative-0.16.1.0 Completed random-1.2.1 Starting temporary-1.3 Building temporary-1.3 Completed temporary-1.3 Completed optparse-applicative-0.16.1.0 Downloading kempe-0.2.0.7 Downloaded kempe-0.2.0.7 Starting kempe-0.2.0.7 Building kempe-0.2.0.7 Failed to install kempe-0.2.0.7 Build log ( /home/builder/.cabal/logs/ghc-8.10.2/kempe-0.2.0.7-9nIBbIf8QySCdJBq20oqQf.log ): cabal: Entering directory '/tmp/cabal-tmp-9288/kempe-0.2.0.7' Configuring kempe-0.2.0.7... Preprocessing library 'kempe-modules' for kempe-0.2.0.7.. Building library 'kempe-modules' for kempe-0.2.0.7.. [ 1 of 42] Compiling Data.Copointed ( src/Data/Copointed.hs, dist/build/kempe-modules/Data/Copointed.o, dist/build/kempe-modules/Data/Copointed.dyn_o ) [ 2 of 42] Compiling Data.Foldable.Ext ( src/Data/Foldable/Ext.hs, dist/build/kempe-modules/Data/Foldable/Ext.o, dist/build/kempe-modules/Data/Foldable/Ext.dyn_o ) [ 3 of 42] Compiling Kempe.Asm.Pretty ( src/Kempe/Asm/Pretty.hs, dist/build/kempe-modules/Kempe/Asm/Pretty.o, dist/build/kempe-modules/Kempe/Asm/Pretty.dyn_o ) src/Kempe/Asm/Pretty.hs:7:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 7 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [ 4 of 42] Compiling Kempe.Asm.Type ( src/Kempe/Asm/Type.hs, dist/build/kempe-modules/Kempe/Asm/Type.o, dist/build/kempe-modules/Kempe/Asm/Type.dyn_o ) src/Kempe/Asm/Type.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [ 5 of 42] Compiling Kempe.Asm.Liveness ( src/Kempe/Asm/Liveness.hs, dist/build/kempe-modules/Kempe/Asm/Liveness.o, dist/build/kempe-modules/Kempe/Asm/Liveness.dyn_o ) src/Kempe/Asm/Liveness.hs:12:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 12 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [ 6 of 42] Compiling Kempe.Proc.As ( src/Kempe/Proc/As.hs, dist/build/kempe-modules/Kempe/Proc/As.o, dist/build/kempe-modules/Kempe/Proc/As.dyn_o ) [ 7 of 42] Compiling Kempe.Proc.Nasm ( src/Kempe/Proc/Nasm.hs, dist/build/kempe-modules/Kempe/Proc/Nasm.o, dist/build/kempe-modules/Kempe/Proc/Nasm.dyn_o ) [ 8 of 42] Compiling Kempe.Unique ( src/Kempe/Unique.hs, dist/build/kempe-modules/Kempe/Unique.o, dist/build/kempe-modules/Kempe/Unique.dyn_o ) [ 9 of 42] Compiling Kempe.Name ( src/Kempe/Name.hs, dist/build/kempe-modules/Kempe/Name.o, dist/build/kempe-modules/Kempe/Name.dyn_o ) src/Kempe/Name.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [10 of 42] Compiling Kempe.Lexer ( dist/build/kempe-modules/Kempe/Lexer.hs, dist/build/kempe-modules/Kempe/Lexer.o, dist/build/kempe-modules/Kempe/Lexer.dyn_o ) src/Kempe/Lexer.x:30:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 30 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ templates/wrappers.hs:16:1: warning: [-Wunused-imports] The qualified import of Data.Char is redundant except perhaps to import instances from Data.Char To import instances alone, use: import Data.Char() [11 of 42] Compiling Kempe.AST.Size ( src/Kempe/AST/Size.hs, dist/build/kempe-modules/Kempe/AST/Size.o, dist/build/kempe-modules/Kempe/AST/Size.dyn_o ) [12 of 42] Compiling Kempe.Error ( src/Kempe/Error.hs, dist/build/kempe-modules/Kempe/Error.o, dist/build/kempe-modules/Kempe/Error.dyn_o ) src/Kempe/Error.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [13 of 42] Compiling Prettyprinter.Debug ( src/Prettyprinter/Debug.hs, dist/build/kempe-modules/Prettyprinter/Debug.o, dist/build/kempe-modules/Prettyprinter/Debug.dyn_o ) src/Prettyprinter/Debug.hs:8:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 8 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [14 of 42] Compiling Prettyprinter.Ext ( src/Prettyprinter/Ext.hs, dist/build/kempe-modules/Prettyprinter/Ext.o, dist/build/kempe-modules/Prettyprinter/Ext.dyn_o ) [15 of 42] Compiling Kempe.IR.Type ( src/Kempe/IR/Type.hs, dist/build/kempe-modules/Kempe/IR/Type.o, dist/build/kempe-modules/Kempe/IR/Type.dyn_o ) src/Kempe/IR/Type.hs:17:1: warning: [-Wunused-imports] The import of Control.Monad.State.Strict is redundant except perhaps to import instances from Control.Monad.State.Strict To import instances alone, use: import Control.Monad.State.Strict() | 17 | import Control.Monad.State.Strict (State) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/IR/Type.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [16 of 42] Compiling Kempe.IR.Opt ( src/Kempe/IR/Opt.hs, dist/build/kempe-modules/Kempe/IR/Opt.o, dist/build/kempe-modules/Kempe/IR/Opt.dyn_o ) [17 of 42] Compiling Kempe.IR.Monad ( src/Kempe/IR/Monad.hs, dist/build/kempe-modules/Kempe/IR/Monad.o, dist/build/kempe-modules/Kempe/IR/Monad.dyn_o ) [18 of 42] Compiling Kempe.Asm.X86.Type ( src/Kempe/Asm/X86/Type.hs, dist/build/kempe-modules/Kempe/Asm/X86/Type.o, dist/build/kempe-modules/Kempe/Asm/X86/Type.dyn_o ) src/Kempe/Asm/X86/Type.hs:20:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 20 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [19 of 42] Compiling Kempe.Asm.X86.Trans ( src/Kempe/Asm/X86/Trans.hs, dist/build/kempe-modules/Kempe/Asm/X86/Trans.o, dist/build/kempe-modules/Kempe/Asm/X86/Trans.dyn_o ) src/Kempe/Asm/X86/Trans.hs:33:1: warning: Pattern match checker ran into -fmax-pmcheck-models=100 limit, so " Redundant clauses might not be reported at all " Redundant clauses might be reported as inaccessible " Patterns reported as unmatched might actually be matched Increase the limit or resolve the warnings to suppress this message. | 33 | irEmit _ (IR.Jump l) = pure [Jump () l] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... src/Kempe/Asm/X86/Trans.hs:33:1: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for irEmit: Patterns not matched: (Data.IntMap.Internal.Bin _ _ _ _) (IR.MovMem (IR.Reg (IR.Temp64 _)) p (IR.ExprIntBinOp IR.IntMinusIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt _))) where p is not one of {1, 8} (Data.IntMap.Internal.Bin _ _ _ _) (IR.MovMem (IR.Reg (IR.Temp64 _)) p (IR.ExprIntBinOp IR.IntMinusIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt8 _))) where p is not one of {1, 8} (Data.IntMap.Internal.Bin _ _ _ _) (IR.MovMem (IR.Reg (IR.Temp64 _)) p (IR.ExprIntBinOp IR.IntMinusIR (IR.Reg (IR.Temp64 _)) (IR.ConstTag _))) where p is not one of {1, 8} (Data.IntMap.Internal.Bin _ _ _ _) (IR.MovMem (IR.Reg (IR.Temp64 _)) p (IR.ExprIntBinOp IR.IntMinusIR (IR.Reg (IR.Temp64 _)) (IR.ConstWord _))) where p is not one of {1, 8} ... | 33 | irEmit _ (IR.Jump l) = pure [Jump () l] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... src/Kempe/Asm/X86/Trans.hs:210:1: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for evalE: Patterns not matched: (IR.ExprIntBinOp IR.WordShiftLIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt _)) (IR.Temp64 _) (IR.ExprIntBinOp IR.WordShiftLIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt _)) (IR.Temp8 _) (IR.ExprIntBinOp IR.WordShiftLIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt _)) IR.DataPointer (IR.ExprIntBinOp IR.WordShiftLIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt8 _)) (IR.Temp64 _) ... | 210 | evalE (IR.ConstInt i) r = pure [MovRC () (toAbsReg r) i] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... [20 of 42] Compiling Kempe.Asm.X86.Linear ( src/Kempe/Asm/X86/Linear.hs, dist/build/kempe-modules/Kempe/Asm/X86/Linear.o, dist/build/kempe-modules/Kempe/Asm/X86/Linear.dyn_o ) src/Kempe/Asm/X86/Linear.hs:16:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 16 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/X86/Linear.hs:65:1: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for assoc: Patterns not matched: Rsp Rbp Rbx | 65 | assoc Rax = S.fromList [AH, AL] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... src/Kempe/Asm/X86/Linear.hs:112:5: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In a case alternative: Patterns not matched: Rdi Rsi Sil Dil ... | 112 | case xR of | ^^^^^^^^^^... [21 of 42] Compiling Kempe.Asm.X86.ControlFlow ( src/Kempe/Asm/X86/ControlFlow.hs, dist/build/kempe-modules/Kempe/Asm/X86/ControlFlow.o, dist/build/kempe-modules/Kempe/Asm/X86/ControlFlow.dyn_o ) src/Kempe/Asm/X86/ControlFlow.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [22 of 42] Compiling Kempe.Asm.Arm.Type ( src/Kempe/Asm/Arm/Type.hs, dist/build/kempe-modules/Kempe/Asm/Arm/Type.o, dist/build/kempe-modules/Kempe/Asm/Arm/Type.dyn_o ) src/Kempe/Asm/Arm/Type.hs:20:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 20 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Arm/Type.hs:193:5: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for pretty: Patterns not matched: UnsignedGeq | 193 | pretty Eq = "EQ" | ^^^^^^^^^^^^^^^^^^^^^^^^^... [23 of 42] Compiling Kempe.Asm.Arm.Trans ( src/Kempe/Asm/Arm/Trans.hs, dist/build/kempe-modules/Kempe/Asm/Arm/Trans.o, dist/build/kempe-modules/Kempe/Asm/Arm/Trans.dyn_o ) src/Kempe/Asm/Arm/Trans.hs:40:1: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for irEmit: Patterns not matched: (Data.IntMap.Internal.Bin _ _ _ _) (IR.WrapKCall Cabi ([], [(TyBuiltin _ _)]) (Data.ByteString.Internal.PS _ _ _) _) (Data.IntMap.Internal.Bin _ _ _ _) (IR.WrapKCall Cabi ([], [(TyNamed _ _)]) (Data.ByteString.Internal.PS _ _ _) _) (Data.IntMap.Internal.Bin _ _ _ _) (IR.WrapKCall Cabi ([], [(TyVar _ _)]) (Data.ByteString.Internal.PS _ _ _) _) (Data.IntMap.Internal.Bin _ _ _ _) (IR.WrapKCall Cabi ([], [(TyApp _ _ _)]) (Data.ByteString.Internal.PS _ _ _) _) ... | 40 | irEmit _ (IR.Jump l) = pure [Branch () l] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... src/Kempe/Asm/Arm/Trans.hs:115:1: warning: Pattern match checker ran into -fmax-pmcheck-models=100 limit, so " Redundant clauses might not be reported at all " Redundant clauses might be reported as inaccessible " Patterns reported as unmatched might actually be matched Increase the limit or resolve the warnings to suppress this message. | 115 | evalE (IR.ConstInt i) r = pure [MovRC () (toAbsReg r) i] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... src/Kempe/Asm/Arm/Trans.hs:115:1: warning: [-Wincomplete-patterns] Pattern match(es) are non-exhaustive In an equation for evalE: Patterns not matched: (IR.ExprIntBinOp IR.IntPlusIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt8 _)) (IR.Temp64 _) (IR.ExprIntBinOp IR.IntPlusIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt8 _)) (IR.Temp8 _) (IR.ExprIntBinOp IR.IntPlusIR (IR.Reg (IR.Temp64 _)) (IR.ConstInt8 _)) IR.DataPointer (IR.ExprIntBinOp IR.IntPlusIR (IR.Reg (IR.Temp64 _)) (IR.ConstTag _)) (IR.Temp64 _) ... | 115 | evalE (IR.ConstInt i) r = pure [MovRC () (toAbsReg r) i] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^... [24 of 42] Compiling Kempe.Asm.Arm.Opt ( src/Kempe/Asm/Arm/Opt.hs, dist/build/kempe-modules/Kempe/Asm/Arm/Opt.o, dist/build/kempe-modules/Kempe/Asm/Arm/Opt.dyn_o ) [25 of 42] Compiling Kempe.Asm.Arm.Linear ( src/Kempe/Asm/Arm/Linear.hs, dist/build/kempe-modules/Kempe/Asm/Arm/Linear.o, dist/build/kempe-modules/Kempe/Asm/Arm/Linear.dyn_o ) src/Kempe/Asm/Arm/Linear.hs:13:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 13 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [26 of 42] Compiling Kempe.Asm.Arm.ControlFlow ( src/Kempe/Asm/Arm/ControlFlow.hs, dist/build/kempe-modules/Kempe/Asm/Arm/ControlFlow.o, dist/build/kempe-modules/Kempe/Asm/Arm/ControlFlow.dyn_o ) src/Kempe/Asm/Arm/ControlFlow.hs:10:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 10 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [27 of 42] Compiling Kempe.AST ( src/Kempe/AST.hs, dist/build/kempe-modules/Kempe/AST.o, dist/build/kempe-modules/Kempe/AST.dyn_o ) src/Kempe/AST.hs:41:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 41 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/AST.hs:245:1: warning: [-Wunused-top-binds] Defined but not used: prettyDecls | 245 | prettyDecls = prettyDeclarationsGeneral pretty | ^^^^^^^^^^^ [28 of 42] Compiling Kempe.TyAssign ( src/Kempe/TyAssign.hs, dist/build/kempe-modules/Kempe/TyAssign.o, dist/build/kempe-modules/Kempe/TyAssign.dyn_o ) src/Kempe/TyAssign.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [29 of 42] Compiling Kempe.Parser ( dist/build/kempe-modules/Kempe/Parser.hs, dist/build/kempe-modules/Kempe/Parser.o, dist/build/kempe-modules/Kempe/Parser.dyn_o ) [30 of 42] Compiling Kempe.Monomorphize ( src/Kempe/Monomorphize.hs, dist/build/kempe-modules/Kempe/Monomorphize.o, dist/build/kempe-modules/Kempe/Monomorphize.dyn_o ) src/Kempe/Monomorphize.hs:31:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 31 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Monomorphize.hs:58:1: warning: [-Wunused-top-binds] Defined but not used: prettyDumpBinds | 58 | prettyDumpBinds b = vsep (prettyBind <$> M.toList b) | ^^^^^^^^^^^^^^^ [31 of 42] Compiling Kempe.Module ( src/Kempe/Module.hs, dist/build/kempe-modules/Kempe/Module.o, dist/build/kempe-modules/Kempe/Module.dyn_o ) [32 of 42] Compiling Kempe.Inline ( src/Kempe/Inline.hs, dist/build/kempe-modules/Kempe/Inline.o, dist/build/kempe-modules/Kempe/Inline.dyn_o ) src/Kempe/Inline.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [33 of 42] Compiling Kempe.IR ( src/Kempe/IR.hs, dist/build/kempe-modules/Kempe/IR.o, dist/build/kempe-modules/Kempe/IR.dyn_o ) [34 of 42] Compiling Kempe.Error.Warning ( src/Kempe/Error/Warning.hs, dist/build/kempe-modules/Kempe/Error/Warning.o, dist/build/kempe-modules/Kempe/Error/Warning.dyn_o ) src/Kempe/Error/Warning.hs:7:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 7 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [35 of 42] Compiling Kempe.Check.TopLevel ( src/Kempe/Check/TopLevel.hs, dist/build/kempe-modules/Kempe/Check/TopLevel.o, dist/build/kempe-modules/Kempe/Check/TopLevel.dyn_o ) [36 of 42] Compiling Kempe.Check.Restrict ( src/Kempe/Check/Restrict.hs, dist/build/kempe-modules/Kempe/Check/Restrict.o, dist/build/kempe-modules/Kempe/Check/Restrict.dyn_o ) [37 of 42] Compiling Kempe.Check.Pattern ( src/Kempe/Check/Pattern.hs, dist/build/kempe-modules/Kempe/Check/Pattern.o, dist/build/kempe-modules/Kempe/Check/Pattern.dyn_o ) [38 of 42] Compiling Kempe.Shuttle ( src/Kempe/Shuttle.hs, dist/build/kempe-modules/Kempe/Shuttle.o, dist/build/kempe-modules/Kempe/Shuttle.dyn_o ) [39 of 42] Compiling Kempe.Pipeline ( src/Kempe/Pipeline.hs, dist/build/kempe-modules/Kempe/Pipeline.o, dist/build/kempe-modules/Kempe/Pipeline.dyn_o ) [40 of 42] Compiling Kempe.Debug ( src/Kempe/Debug.hs, dist/build/kempe-modules/Kempe/Debug.o, dist/build/kempe-modules/Kempe/Debug.dyn_o ) [41 of 42] Compiling Kempe.Check.Lint ( src/Kempe/Check/Lint.hs, dist/build/kempe-modules/Kempe/Check/Lint.o, dist/build/kempe-modules/Kempe/Check/Lint.dyn_o ) [42 of 42] Compiling Kempe.File ( src/Kempe/File.hs, dist/build/kempe-modules/Kempe/File.o, dist/build/kempe-modules/Kempe/File.dyn_o ) src/Kempe/File.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Preprocessing executable 'kc' for kempe-0.2.0.7.. Building executable 'kc' for kempe-0.2.0.7.. [1 of 2] Compiling Paths_kempe ( dist/build/kc/autogen/Paths_kempe.hs, dist/build/kc/kc-tmp/Paths_kempe.o ) [2 of 2] Compiling Main ( run/Main.hs, dist/build/kc/kc-tmp/Main.o ) run/Main.hs:6:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 6 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Linking dist/build/kc/kc ... Preprocessing library 'kempe-modules' for kempe-0.2.0.7.. Running Haddock on library 'kempe-modules' for kempe-0.2.0.7.. Warning: --source-* options are ignored when --hyperlinked-source is enabled. src/Kempe/Asm/Pretty.hs:7:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 7 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Type.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Liveness.hs:12:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 12 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Name.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Lexer.x:30:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 30 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ templates/wrappers.hs:16:1: warning: [-Wunused-imports] The qualified import of Data.Char is redundant except perhaps to import instances from Data.Char To import instances alone, use: import Data.Char() src/Kempe/Error.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Prettyprinter/Debug.hs:8:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 8 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/IR/Type.hs:17:1: warning: [-Wunused-imports] The import of Control.Monad.State.Strict is redundant except perhaps to import instances from Control.Monad.State.Strict To import instances alone, use: import Control.Monad.State.Strict() | 17 | import Control.Monad.State.Strict (State) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/IR/Type.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/X86/Type.hs:20:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 20 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/X86/Linear.hs:16:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 16 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/X86/ControlFlow.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Arm/Type.hs:20:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 20 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Arm/Linear.hs:13:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 13 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Asm/Arm/ControlFlow.hs:10:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 10 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/AST.hs:41:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 41 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/AST.hs:245:1: warning: [-Wunused-top-binds] Defined but not used: prettyDecls | 245 | prettyDecls = prettyDeclarationsGeneral pretty | ^^^^^^^^^^^ src/Kempe/TyAssign.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Monomorphize.hs:31:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 31 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Monomorphize.hs:58:1: warning: [-Wunused-top-binds] Defined but not used: prettyDumpBinds | 58 | prettyDumpBinds b = vsep (prettyBind <$> M.toList b) | ^^^^^^^^^^^^^^^ src/Kempe/Inline.hs:11:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 11 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/Error/Warning.hs:7:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 7 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ src/Kempe/File.hs:21:1: warning: [-Wunused-imports] The import of Data.Semigroup is redundant except perhaps to import instances from Data.Semigroup To import instances alone, use: import Data.Semigroup() | 21 | import Data.Semigroup ((<>)) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Haddock coverage: 33% ( 1 / 3) in 'Kempe.Asm.Liveness' Missing documentation for: Liveness (src/Kempe/Asm/Type.hs:15) reconstruct (src/Kempe/Asm/Liveness.hs:41) 0% ( 0 / 14) in 'Kempe.Lexer' Missing documentation for: Module header alexMonadScan (templates/wrappers.hs:342) alexInitUserState (src/Kempe/Lexer.x:187) runAlex (templates/wrappers.hs:293) runAlexSt (src/Kempe/Lexer.x:383) withAlexSt (src/Kempe/Lexer.x:386) lexKempe (src/Kempe/Lexer.x:380) AlexPosn (templates/wrappers.hs:150) Alex (templates/wrappers.hs:305) Token (src/Kempe/Lexer.x:333) Keyword (src/Kempe/Lexer.x:283) Sym (src/Kempe/Lexer.x:205) Builtin (src/Kempe/Lexer.x:303) AlexUserState (src/Kempe/Lexer.x:185) Warning: 'AST' is out of scope. If you qualify the identifier, haddock can try to link it anyway. 0% ( 0 / 2) in 'Kempe.IR.Opt' Missing documentation for: Module header optimize (src/Kempe/IR/Opt.hs:6) Warning: 'MovMem' is out of scope. If you qualify the identifier, haddock can try to link it anyway. Warning: 'Temp' is out of scope. If you qualify the identifier, haddock can try to link it anyway. 50% ( 1 / 2) in 'Kempe.Asm.X86.Trans' Missing documentation for: irToX86 (src/Kempe/Asm/X86/Trans.hs:21) 33% ( 1 / 3) in 'Kempe.Asm.X86.Linear' Missing documentation for: X86Reg (src/Kempe/Asm/X86/Type.hs:54) allocRegs (src/Kempe/Asm/X86/Linear.hs:95) Warning: 'IntSet' is out of scope. If you qualify the identifier, haddock can try to link it anyway. 33% ( 1 / 3) in 'Kempe.Asm.X86.ControlFlow' Missing documentation for: Module header mkControlFlow (src/Kempe/Asm/X86/ControlFlow.hs:21) 0% ( 0 / 2) in 'Kempe.Asm.Arm.Trans' Missing documentation for: Module header irToAarch64 (src/Kempe/Asm/Arm/Trans.hs:15) 50% ( 1 / 2) in 'Kempe.Asm.Arm.Linear' Missing documentation for: allocRegs (src/Kempe/Asm/Arm/Linear.hs:42) Warning: 'IntSet' is out of scope. If you qualify the identifier, haddock can try to link it anyway. 33% ( 1 / 3) in 'Kempe.Asm.Arm.ControlFlow' Missing documentation for: Module header mkControlFlow (src/Kempe/Asm/Arm/ControlFlow.hs:20) 17% ( 4 / 23) in 'Kempe.AST' Missing documentation for: Atom (src/Kempe/AST.hs:117) BuiltinFn (src/Kempe/AST.hs:144) KempeDecl (src/Kempe/AST.hs:221) Pattern (src/Kempe/AST.hs:64) Declarations (src/Kempe/AST.hs:259) Module (src/Kempe/AST.hs:261) ABI (src/Kempe/AST/Size.hs:70) BuiltinTy (src/Kempe/AST/Size.hs:49) KempeTy (src/Kempe/AST/Size.hs:33) StackType (src/Kempe/AST/Size.hs:39) MonoStackType (src/Kempe/AST/Size.hs:44) prettyMonoStackType (src/Kempe/AST/Size.hs:46) freeVars (src/Kempe/AST.hs:271) prettyTyped (src/Kempe/AST.hs:105) prettyTypedModule (src/Kempe/AST.hs:253) prettyFancyModule (src/Kempe/AST.hs:247) prettyModule (src/Kempe/AST.hs:256) prettyTypedDecl (src/Kempe/AST.hs:250) voidStackType (src/Kempe/AST.hs:61) 20% ( 1 / 5) in 'Kempe.TyAssign' Missing documentation for: TypeM (src/Kempe/TyAssign.hs:91) runTypeM (src/Kempe/TyAssign.hs:149) checkModule (src/Kempe/TyAssign.hs:425) assignModule (src/Kempe/TyAssign.hs:428) 0% ( 0 / 6) in 'Kempe.Parser' Missing documentation for: Module header parse (dist/build/kempe-modules/Kempe/Parser.hs:1369) parseWithMax (dist/build/kempe-modules/Kempe/Parser.hs:1372) parseWithCtx (dist/build/kempe-modules/Kempe/Parser.hs:1378) parseWithInitCtx (dist/build/kempe-modules/Kempe/Parser.hs:1375) ParseError (dist/build/kempe-modules/Kempe/Parser.hs:1352) 50% ( 5 / 10) in 'Kempe.Monomorphize' Missing documentation for: MonoM (src/Kempe/Monomorphize.hs:55) runMonoM (src/Kempe/Monomorphize.hs:72) tryMono (src/Kempe/Monomorphize.hs:81) closure (src/Kempe/Monomorphize.hs:266) mkModuleMap (src/Kempe/Monomorphize.hs:89) 50% ( 1 / 2) in 'Kempe.Module' Missing documentation for: parseProcess (src/Kempe/Module.hs:17) Warning: 'Atoms' is out of scope. If you qualify the identifier, haddock can try to link it anyway. 50% ( 1 / 2) in 'Kempe.Inline' Missing documentation for: inline (src/Kempe/Inline.hs:21) 14% ( 1 / 7) in 'Kempe.IR' Missing documentation for: Module header writeModule (src/Kempe/IR.hs:78) runTempM (src/Kempe/IR.hs:39) TempM (src/Kempe/IR.hs:51) prettyIR (src/Kempe/IR.hs:75) WriteSt (src/Kempe/IR/Type.hs:29) 50% ( 1 / 2) in 'Kempe.Check.Pattern' Missing documentation for: checkModuleExhaustive (src/Kempe/Check/Pattern.hs:42) 0% ( 0 / 2) in 'Kempe.Shuttle' Missing documentation for: Module header monomorphize (src/Kempe/Shuttle.hs:28) 0% ( 0 / 6) in 'Kempe.Pipeline' Missing documentation for: Module header irGen (src/Kempe/Pipeline.hs:30) x86Parsed (src/Kempe/Pipeline.hs:44) x86Alloc (src/Kempe/Pipeline.hs:47) armParsed (src/Kempe/Pipeline.hs:38) armAlloc (src/Kempe/Pipeline.hs:41) 0% ( 0 / 13) in 'Kempe.File' Missing documentation for: Module header tcFile (src/Kempe/File.hs:43) warnFile (src/Kempe/File.hs:50) dumpMono (src/Kempe/File.hs:64) dumpTyped (src/Kempe/File.hs:58) irFile (src/Kempe/File.hs:81) x86File (src/Kempe/File.hs:86) armFile (src/Kempe/File.hs:91) dumpX86 (src/Kempe/File.hs:75) dumpArm (src/Kempe/File.hs:78) compile (src/Kempe/File.hs:96) armCompile (src/Kempe/File.hs:104) dumpIR (src/Kempe/File.hs:72) Warning: Kempe.Asm.Liveness: could not find link destinations for: Copointed Warning: Kempe.Lexer: could not find link destinations for: AlexState Name TyName Warning: Kempe.IR.Opt: could not find link destinations for: Stmt Warning: Kempe.Asm.X86.Trans: could not find link destinations for: SizeEnv Stmt X86 AbsReg Warning: Kempe.Asm.X86.Linear: could not find link destinations for: X86 AbsReg Warning: Kempe.Asm.X86.ControlFlow: could not find link destinations for: X86 AbsReg Warning: Kempe.Asm.Arm.Trans: could not find link destinations for: SizeEnv Stmt Arm AbsReg Warning: Kempe.Asm.Arm.Linear: could not find link destinations for: Arm AbsReg ArmReg Warning: Kempe.Asm.Arm.ControlFlow: could not find link destinations for: Arm AbsReg Warning: Kempe.AST: could not find link destinations for: Name TyName Warning: Kempe.TyAssign: could not find link destinations for: TyState Error Warning: Kempe.Parser: could not find link destinations for: Name Warning: Kempe.Monomorphize: could not find link destinations for: RenameEnv Error SizeEnv ModuleMap Name Warning: Kempe.IR: could not find link destinations for: SizeEnv Stmt TempSt Label Size Warning: Kempe.Check.Pattern: could not find link destinations for: Error Warning: Kempe.Shuttle: could not find link destinations for: Error SizeEnv Warning: Kempe.Pipeline: could not find link destinations for: Stmt SizeEnv X86 AbsReg Arm AbsReg ArmReg Warning: Kempe.File: could not find link destinations for: Error Warning Documentation created: dist/doc/html/kempe/index.html, dist/doc/html/kempe/kempe.txt Preprocessing executable 'kc' for kempe-0.2.0.7.. Installing internal library kempe-modules in /home/builder/hackage-server/build-cache/tmp-install/lib/x86_64-linux-ghc-8.10.2/kempe-0.2.0.7-9nIBbIf8QySCdJBq20oqQf Installing executable kc in /home/builder/hackage-server/build-cache/tmp-install/bin Warning: The directory /home/builder/hackage-server/build-cache/tmp-install/bin is not in the system search path. cabal: Leaving directory '/tmp/cabal-tmp-9288/kempe-0.2.0.7' cabal: Error: some packages failed to install: kempe-0.2.0.7-9nIBbIf8QySCdJBq20oqQf failed during the final install step. The exception was: dieVerbatim: user error (cabal: '/opt/ghc/bin/ghc-pkg' exited with an error: z-kempe-z-kempe-modules-0.2.0.7: installed package info from too old version of Cabal (key field does not match id field) )