Build #5 for Obsidian-0.0.0.2

[all reports]

Package Obsidian-0.0.0.2
Install BuildFailed
Docs NotTried
Tests NotTried
Time submitted 2015-11-14 23:06:52.341261 UTC
Compiler ghc-7.10.2
OS linux
Arch x86_64
Dependencies value-supply-0.6, mtl-2.2.1, containers-0.5.6.2, base-4.8.1.0
Flags none

Code Coverage

No Code Coverage was submitted for this report.

Build log

[view raw]

Resolving dependencies...
Configuring mtl-2.2.1...
Building mtl-2.2.1...
Preprocessing library mtl-2.2.1...
[ 1 of 22] Compiling Control.Monad.Writer.Class ( Control/Monad/Writer/Class.hs, dist/build/Control/Monad/Writer/Class.o )
[ 2 of 22] Compiling Control.Monad.State.Class ( Control/Monad/State/Class.hs, dist/build/Control/Monad/State/Class.o )
[ 3 of 22] Compiling Control.Monad.Reader.Class ( Control/Monad/Reader/Class.hs, dist/build/Control/Monad/Reader/Class.o )
[ 4 of 22] Compiling Control.Monad.RWS.Class ( Control/Monad/RWS/Class.hs, dist/build/Control/Monad/RWS/Class.o )
[ 5 of 22] Compiling Control.Monad.Identity ( Control/Monad/Identity.hs, dist/build/Control/Monad/Identity.o )
[ 6 of 22] Compiling Control.Monad.Error.Class ( Control/Monad/Error/Class.hs, dist/build/Control/Monad/Error/Class.o )
[ 7 of 22] Compiling Control.Monad.Cont.Class ( Control/Monad/Cont/Class.hs, dist/build/Control/Monad/Cont/Class.o )
[ 8 of 22] Compiling Control.Monad.Trans ( Control/Monad/Trans.hs, dist/build/Control/Monad/Trans.o )
[ 9 of 22] Compiling Control.Monad.Error ( Control/Monad/Error.hs, dist/build/Control/Monad/Error.o )
[10 of 22] Compiling Control.Monad.Except ( Control/Monad/Except.hs, dist/build/Control/Monad/Except.o )
[11 of 22] Compiling Control.Monad.List ( Control/Monad/List.hs, dist/build/Control/Monad/List.o )
[12 of 22] Compiling Control.Monad.RWS.Lazy ( Control/Monad/RWS/Lazy.hs, dist/build/Control/Monad/RWS/Lazy.o )
[13 of 22] Compiling Control.Monad.RWS ( Control/Monad/RWS.hs, dist/build/Control/Monad/RWS.o )
[14 of 22] Compiling Control.Monad.Reader ( Control/Monad/Reader.hs, dist/build/Control/Monad/Reader.o )
[15 of 22] Compiling Control.Monad.RWS.Strict ( Control/Monad/RWS/Strict.hs, dist/build/Control/Monad/RWS/Strict.o )
[16 of 22] Compiling Control.Monad.State.Lazy ( Control/Monad/State/Lazy.hs, dist/build/Control/Monad/State/Lazy.o )
[17 of 22] Compiling Control.Monad.State ( Control/Monad/State.hs, dist/build/Control/Monad/State.o )
[18 of 22] Compiling Control.Monad.State.Strict ( Control/Monad/State/Strict.hs, dist/build/Control/Monad/State/Strict.o )
[19 of 22] Compiling Control.Monad.Writer.Lazy ( Control/Monad/Writer/Lazy.hs, dist/build/Control/Monad/Writer/Lazy.o )
[20 of 22] Compiling Control.Monad.Writer ( Control/Monad/Writer.hs, dist/build/Control/Monad/Writer.o )
[21 of 22] Compiling Control.Monad.Writer.Strict ( Control/Monad/Writer/Strict.hs, dist/build/Control/Monad/Writer/Strict.o )
[22 of 22] Compiling Control.Monad.Cont ( Control/Monad/Cont.hs, dist/build/Control/Monad/Cont.o )
In-place registering mtl-2.2.1...
Running Haddock for mtl-2.2.1...
Running hscolour for mtl-2.2.1...
Preprocessing library mtl-2.2.1...
Preprocessing library mtl-2.2.1...
Haddock coverage:
  75% (  3 /  4) in 'Control.Monad.Writer.Class'
  Missing documentation for:
    MonadWriter (Control/Monad/Writer/Class.hs:62)
 100% (  5 /  5) in 'Control.Monad.State.Class'
 100% (  3 /  3) in 'Control.Monad.Reader.Class'
  80% (  4 /  5) in 'Control.Monad.RWS.Class'
  Missing documentation for:
    MonadRWS (Control/Monad/RWS/Class.hs:44)
 100% (  4 /  4) in 'Control.Monad.Identity'
 100% (  3 /  3) in 'Control.Monad.Error.Class'
  50% (  1 /  2) in 'Control.Monad.Cont.Class'
  Missing documentation for:
    MonadCont (Control/Monad/Cont/Class.hs:73)
 100% (  3 /  3) in 'Control.Monad.Trans'
  93% ( 14 / 15) in 'Control.Monad.Error'
  Missing documentation for:
    runErrorT
 100% ( 19 / 19) in 'Control.Monad.Except'
 100% (  5 /  5) in 'Control.Monad.List'
  95% ( 21 / 22) in 'Control.Monad.RWS.Lazy'
  Missing documentation for:
    runRWST
 100% (  2 /  2) in 'Control.Monad.RWS'
  96% ( 22 / 23) in 'Control.Monad.Reader'
  Missing documentation for:
    runReaderT
  95% ( 21 / 22) in 'Control.Monad.RWS.Strict'
  Missing documentation for:
    runRWST
  96% ( 24 / 25) in 'Control.Monad.State.Lazy'
  Missing documentation for:
    runStateT
 100% (  2 /  2) in 'Control.Monad.State'
  96% ( 24 / 25) in 'Control.Monad.State.Strict'
  Missing documentation for:
    runStateT
  89% ( 17 / 19) in 'Control.Monad.Writer.Lazy'
  Missing documentation for:
    MonadWriter (Control/Monad/Writer/Class.hs:62)
    runWriterT
 100% (  2 /  2) in 'Control.Monad.Writer'
  94% ( 17 / 18) in 'Control.Monad.Writer.Strict'
  Missing documentation for:
    MonadWriter (Control/Monad/Writer/Class.hs:62)
  91% ( 20 / 22) in 'Control.Monad.Cont'
  Missing documentation for:
    MonadCont (Control/Monad/Cont/Class.hs:73)
    runContT
Documentation created: dist/doc/html/mtl/index.html, dist/doc/html/mtl/mtl.txt
Creating package registration file: /tmp/pkgConf-mtl-2.2278722862233665123.1
Installing library in
/home/builder/hackage-server/build-cache/tmp-install/lib/x86_64-linux-ghc-7.10.2/mtl-2.2.1-KMpng31YRYc5JfMWFZ3FCU
Registering mtl-2.2.1...
Installed mtl-2.2.1
Configuring value-supply-0.6...
Building value-supply-0.6...
Preprocessing library value-supply-0.6...
[1 of 1] Compiling Data.Supply      ( Data/Supply.hs, dist/build/Data/Supply.o )
In-place registering value-supply-0.6...
Running Haddock for value-supply-0.6...
Running hscolour for value-supply-0.6...
Preprocessing library value-supply-0.6...
Preprocessing library value-supply-0.6...
Haddock coverage:
 100% ( 17 / 17) in 'Data.Supply'
Documentation created: dist/doc/html/value-supply/index.html,
dist/doc/html/value-supply/value-supply.txt
Creating package registration file:
/tmp/pkgConf-value-supply-0711645630195740084.6
Installing library in
/home/builder/hackage-server/build-cache/tmp-install/lib/x86_64-linux-ghc-7.10.2/value-supply-0.6-6FTHZuhL89zGCMmrMWNSei
Registering value-supply-0.6...
Installed value-supply-0.6
Configuring Obsidian-0.0.0.2...
Building Obsidian-0.0.0.2...
Preprocessing library Obsidian-0.0.0.2...

Obsidian/CodeGen/InOut.hs:2:14: Warning:
    -XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
[ 1 of 22] Compiling Obsidian.CodeGen.PP ( Obsidian/CodeGen/PP.hs, dist/build/Obsidian/CodeGen/PP.o )
[ 2 of 22] Compiling Obsidian.DimSpec ( Obsidian/DimSpec.hs, dist/build/Obsidian/DimSpec.o )
[ 3 of 22] Compiling Obsidian.Globs   ( Obsidian/Globs.hs, dist/build/Obsidian/Globs.o )
[ 4 of 22] Compiling Obsidian.CodeGen.SPMDC ( Obsidian/CodeGen/SPMDC.hs, dist/build/Obsidian/CodeGen/SPMDC.o )
[ 5 of 22] Compiling Obsidian.Names   ( Obsidian/Names.hs, dist/build/Obsidian/Names.o )
[ 6 of 22] Compiling Obsidian.Types   ( Obsidian/Types.hs, dist/build/Obsidian/Types.o )
[ 7 of 22] Compiling Obsidian.Exp     ( Obsidian/Exp.hs, dist/build/Obsidian/Exp.o )

Obsidian/Exp.hs:788:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Num a)
        bound by a pattern with constructor
                   Add :: forall a. Num a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:788:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CAdd
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Add = CAdd

Obsidian/Exp.hs:789:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Num a)
        bound by a pattern with constructor
                   Sub :: forall a. Num a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:789:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CSub
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Sub = CSub

Obsidian/Exp.hs:790:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Num a)
        bound by a pattern with constructor
                   Mul :: forall a. Num a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:790:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CMul
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Mul = CMul

Obsidian/Exp.hs:791:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Num a)
        bound by a pattern with constructor
                   Div :: forall a. Num a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:791:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CDiv
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Div = CDiv

Obsidian/Exp.hs:792:22:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Floating a)
        bound by a pattern with constructor
                   FDiv :: forall a. Floating a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:792:15-18
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CDiv
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp FDiv = CDiv

Obsidian/Exp.hs:793:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Integral a)
        bound by a pattern with constructor
                   Mod :: forall a. Integral a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:793:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CMod
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Mod = CMod

Obsidian/Exp.hs:795:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   Eq :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:795:15-16
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CEq
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Eq = CEq

Obsidian/Exp.hs:796:23:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   NotEq :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:796:15-19
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CNotEq
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp NotEq = CNotEq

Obsidian/Exp.hs:797:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   Lt :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:797:15-16
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CLt
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Lt = CLt

Obsidian/Exp.hs:798:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   LEq :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:798:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CLEq
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp LEq = CLEq

Obsidian/Exp.hs:799:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   Gt :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:799:15-16
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CGt
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Gt = CGt

Obsidian/Exp.hs:800:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> Bool), Ord a)
        bound by a pattern with constructor
                   GEq :: forall a. Ord a => Op ((a, a) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:800:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CGEq
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp GEq = CGEq

Obsidian/Exp.hs:802:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((Bool, Bool) -> Bool))
        bound by a pattern with constructor
                   And :: Op ((Bool, Bool) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:802:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CAnd
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp And = CAnd

Obsidian/Exp.hs:803:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((Bool, Bool) -> Bool))
        bound by a pattern with constructor
                   Or :: Op ((Bool, Bool) -> Bool),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:803:15-16
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: COr
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Or = COr

Obsidian/Exp.hs:805:21:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Floating a)
        bound by a pattern with constructor
                   Pow :: forall a. Floating a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:805:15-17
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CPow
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp Pow = CPow

Obsidian/Exp.hs:807:28:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Bits a)
        bound by a pattern with constructor
                   BitwiseAnd :: forall a. Bits a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:807:15-24
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CBitwiseAnd
    In an equation for ‘binOpToCBinOp’:
        binOpToCBinOp BitwiseAnd = CBitwiseAnd

Obsidian/Exp.hs:808:28:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Bits a)
        bound by a pattern with constructor
                   BitwiseOr :: forall a. Bits a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:808:15-23
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CBitwiseOr
    In an equation for ‘binOpToCBinOp’:
        binOpToCBinOp BitwiseOr = CBitwiseOr

Obsidian/Exp.hs:809:28:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, a) -> a), Bits a)
        bound by a pattern with constructor
                   BitwiseXor :: forall a. Bits a => Op ((a, a) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:809:15-24
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CBitwiseXor
    In an equation for ‘binOpToCBinOp’:
        binOpToCBinOp BitwiseXor = CBitwiseXor

Obsidian/Exp.hs:810:28:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, b) -> a), Num b, Bits a)
        bound by a pattern with constructor
                   ShiftL :: forall a b. (Num b, Bits a) => Op ((a, b) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:810:15-20
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CShiftL
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp ShiftL = CShiftL

Obsidian/Exp.hs:811:28:
    Couldn't match expected type ‘t’ with actual type ‘CBinOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ ((a, b) -> a), Num b, Bits a)
        bound by a pattern with constructor
                   ShiftR :: forall a b. (Num b, Bits a) => Op ((a, b) -> a),
                 in an equation for ‘binOpToCBinOp’
        at Obsidian/Exp.hs:811:15-20
      ‘t’ is a rigid type variable bound by
          the inferred type of binOpToCBinOp :: Op t1 -> t
          at Obsidian/Exp.hs:788:1
    Possible fix: add a type signature for ‘binOpToCBinOp’
    Relevant bindings include
      binOpToCBinOp :: Op t1 -> t (bound at Obsidian/Exp.hs:788:1)
    In the expression: CShiftR
    In an equation for ‘binOpToCBinOp’: binOpToCBinOp ShiftR = CShiftR

Obsidian/Exp.hs:814:28:
    Couldn't match expected type ‘t’ with actual type ‘CUnOp’
      ‘t’ is untouchable
        inside the constraints (t1 ~ (a -> a), Bits a)
        bound by a pattern with constructor
                   BitwiseNeg :: forall a. Bits a => Op (a -> a),
                 in an equation for ‘unOpToCUnOp’
        at Obsidian/Exp.hs:814:15-24
      ‘t’ is a rigid type variable bound by
          the inferred type of unOpToCUnOp :: Op t1 -> t
          at Obsidian/Exp.hs:814:1
    Possible fix: add a type signature for ‘unOpToCUnOp’
    Relevant bindings include
      unOpToCUnOp :: Op t1 -> t (bound at Obsidian/Exp.hs:814:1)
    In the expression: CBitwiseNeg
    In an equation for ‘unOpToCUnOp’:
        unOpToCUnOp BitwiseNeg = CBitwiseNeg
Failed to install Obsidian-0.0.0.2
cabal: Error: some packages failed to install:
Obsidian-0.0.0.2 failed during the building phase. The exception was:
ExitFailure 1

Test log

No test log was submitted for this report.