clash-lang / clash-prelude

CLaSH prelude library containing datatypes and functions for circuit design
http://www.clash-lang.org/
Other
31 stars 27 forks source link

Test suite failure with GHC 8 #57

Closed snoyberg closed 7 years ago

snoyberg commented 8 years ago

This is a strange report, because the build log looks like the test succeeded, but nonetheless it's reporting as a failure.

> /tmp/stackage-build9/clash-prelude-0.10.7$ runghc -clear-package-db -global-package-db -package-db=/home/stackage/work/builds/nightly/pkgdb Setup configure --enable-tests --package-db=clear --package-db=global --package-db=/home/stackage/work/builds/nightly/pkgdb --libdir=/home/stackage/work/builds/nightly/lib --bindir=/home/stackage/work/builds/nightly/bin --datadir=/home/stackage/work/builds/nightly/share --libexecdir=/home/stackage/work/builds/nightly/libexec --sysconfdir=/home/stackage/work/builds/nightly/etc --docdir=/home/stackage/work/builds/nightly/doc/clash-prelude-0.10.7 --htmldir=/home/stackage/work/builds/nightly/doc/clash-prelude-0.10.7 --haddockdir=/home/stackage/work/builds/nightly/doc/clash-prelude-0.10.7 --flags=
Configuring clash-prelude-0.10.7...
> /tmp/stackage-build9/clash-prelude-0.10.7$ runghc -clear-package-db -global-package-db -package-db=/home/stackage/work/builds/nightly/pkgdb Setup build
Building clash-prelude-0.10.7...
Preprocessing library clash-prelude-0.10.7...
[ 1 of 47] Compiling CLaSH.Sized.Internal.Index[boot] ( src/CLaSH/Sized/Internal/Index.hs-boot, dist/build/CLaSH/Sized/Internal/Index.o-boot )
[ 2 of 47] Compiling CLaSH.Sized.Internal.BitVector[boot] ( src/CLaSH/Sized/Internal/BitVector.hs-boot, dist/build/CLaSH/Sized/Internal/BitVector.o-boot )
[ 3 of 47] Compiling CLaSH.Sized.Vector[boot] ( src/CLaSH/Sized/Vector.hs-boot, dist/build/CLaSH/Sized/Vector.o-boot )
[ 4 of 47] Compiling CLaSH.Promoted.Symbol ( src/CLaSH/Promoted/Symbol.hs, dist/build/CLaSH/Promoted/Symbol.o )
[ 5 of 47] Compiling CLaSH.Promoted.Ord ( src/CLaSH/Promoted/Ord.hs, dist/build/CLaSH/Promoted/Ord.o )
[ 6 of 47] Compiling CLaSH.Promoted.Nat ( src/CLaSH/Promoted/Nat.hs, dist/build/CLaSH/Promoted/Nat.o )
[ 7 of 47] Compiling CLaSH.Promoted.Nat.TH ( src/CLaSH/Promoted/Nat/TH.hs, dist/build/CLaSH/Promoted/Nat/TH.o )
[ 8 of 47] Compiling CLaSH.Promoted.Nat.Literals ( src/CLaSH/Promoted/Nat/Literals.hs, dist/build/CLaSH/Promoted/Nat/Literals.o )
[ 9 of 47] Compiling CLaSH.Promoted.Nat.Unsafe ( src/CLaSH/Promoted/Nat/Unsafe.hs, dist/build/CLaSH/Promoted/Nat/Unsafe.o )
[10 of 47] Compiling CLaSH.Sized.RTree ( src/CLaSH/Sized/RTree.hs, dist/build/CLaSH/Sized/RTree.o )
[11 of 47] Compiling CLaSH.Class.Resize ( src/CLaSH/Class/Resize.hs, dist/build/CLaSH/Class/Resize.o )
[12 of 47] Compiling CLaSH.Class.Num  ( src/CLaSH/Class/Num.hs, dist/build/CLaSH/Class/Num.o )
[13 of 47] Compiling CLaSH.Signal.Internal ( src/CLaSH/Signal/Internal.hs, dist/build/CLaSH/Signal/Internal.o )
[14 of 47] Compiling CLaSH.Sized.Internal.BitVector ( src/CLaSH/Sized/Internal/BitVector.hs, dist/build/CLaSH/Sized/Internal/BitVector.o )
[15 of 47] Compiling CLaSH.Sized.BitVector ( src/CLaSH/Sized/BitVector.hs, dist/build/CLaSH/Sized/BitVector.o )
[16 of 47] Compiling CLaSH.Class.BitPack ( src/CLaSH/Class/BitPack.hs, dist/build/CLaSH/Class/BitPack.o )
[17 of 47] Compiling CLaSH.Prelude.BitIndex ( src/CLaSH/Prelude/BitIndex.hs, dist/build/CLaSH/Prelude/BitIndex.o )
[18 of 47] Compiling CLaSH.Prelude.BitReduction ( src/CLaSH/Prelude/BitReduction.hs, dist/build/CLaSH/Prelude/BitReduction.o )
[19 of 47] Compiling CLaSH.Sized.Internal.Index ( src/CLaSH/Sized/Internal/Index.hs, dist/build/CLaSH/Sized/Internal/Index.o )
[20 of 47] Compiling CLaSH.Sized.Index ( src/CLaSH/Sized/Index.hs, dist/build/CLaSH/Sized/Index.o )
[21 of 47] Compiling CLaSH.Sized.Vector ( src/CLaSH/Sized/Vector.hs, dist/build/CLaSH/Sized/Vector.o )

src/CLaSH/Sized/Vector.hs:1139:1: warning: [-Wredundant-constraints]
    • Redundant constraint: CmpNat (i + s) (s * n) ~ 'GT
    • In the type signature for:
           select :: CmpNat (i + s) (s * n) ~ 'GT =>
                     SNat f -> SNat s -> SNat n -> Vec (f + i) a -> Vec n a
[22 of 47] Compiling CLaSH.Sized.Internal.Signed ( src/CLaSH/Sized/Internal/Signed.hs, dist/build/CLaSH/Sized/Internal/Signed.o )
[23 of 47] Compiling CLaSH.Sized.Signed ( src/CLaSH/Sized/Signed.hs, dist/build/CLaSH/Sized/Signed.o )
[24 of 47] Compiling CLaSH.Sized.Internal.Unsigned ( src/CLaSH/Sized/Internal/Unsigned.hs, dist/build/CLaSH/Sized/Internal/Unsigned.o )
[25 of 47] Compiling CLaSH.Sized.Unsigned ( src/CLaSH/Sized/Unsigned.hs, dist/build/CLaSH/Sized/Unsigned.o )
[26 of 47] Compiling CLaSH.Sized.Fixed ( src/CLaSH/Sized/Fixed.hs, dist/build/CLaSH/Sized/Fixed.o )
[27 of 47] Compiling CLaSH.Signal.Bundle ( src/CLaSH/Signal/Bundle.hs, dist/build/CLaSH/Signal/Bundle.o )
[28 of 47] Compiling CLaSH.Signal.Explicit ( src/CLaSH/Signal/Explicit.hs, dist/build/CLaSH/Signal/Explicit.o )
[29 of 47] Compiling CLaSH.Signal     ( src/CLaSH/Signal.hs, dist/build/CLaSH/Signal.o )
[30 of 47] Compiling CLaSH.Prelude.BlockRam ( src/CLaSH/Prelude/BlockRam.hs, dist/build/CLaSH/Prelude/BlockRam.o )
[31 of 47] Compiling CLaSH.Prelude.BlockRam.File ( src/CLaSH/Prelude/BlockRam/File.hs, dist/build/CLaSH/Prelude/BlockRam/File.o )
[32 of 47] Compiling CLaSH.Prelude.Mealy ( src/CLaSH/Prelude/Mealy.hs, dist/build/CLaSH/Prelude/Mealy.o )
[33 of 47] Compiling CLaSH.Prelude.DataFlow ( src/CLaSH/Prelude/DataFlow.hs, dist/build/CLaSH/Prelude/DataFlow.o )

src/CLaSH/Prelude/DataFlow.hs:540:10: warning: [-Wredundant-constraints]
    • Redundant constraint: KnownNat m
    • In the instance declaration for ‘LockStep (Vec m en) (Vec m a)’
[34 of 47] Compiling CLaSH.Prelude.Moore ( src/CLaSH/Prelude/Moore.hs, dist/build/CLaSH/Prelude/Moore.o )
[35 of 47] Compiling CLaSH.Prelude.RAM ( src/CLaSH/Prelude/RAM.hs, dist/build/CLaSH/Prelude/RAM.o )
[36 of 47] Compiling CLaSH.Prelude.ROM ( src/CLaSH/Prelude/ROM.hs, dist/build/CLaSH/Prelude/ROM.o )
[37 of 47] Compiling CLaSH.Prelude.ROM.File ( src/CLaSH/Prelude/ROM/File.hs, dist/build/CLaSH/Prelude/ROM/File.o )
[38 of 47] Compiling CLaSH.Prelude.Synchronizer ( src/CLaSH/Prelude/Synchronizer.hs, dist/build/CLaSH/Prelude/Synchronizer.o )
[39 of 47] Compiling CLaSH.Prelude.Explicit.Safe ( src/CLaSH/Prelude/Explicit/Safe.hs, dist/build/CLaSH/Prelude/Explicit/Safe.o )
[40 of 47] Compiling CLaSH.Prelude.Testbench ( src/CLaSH/Prelude/Testbench.hs, dist/build/CLaSH/Prelude/Testbench.o )
[41 of 47] Compiling CLaSH.Prelude.Explicit ( src/CLaSH/Prelude/Explicit.hs, dist/build/CLaSH/Prelude/Explicit.o )
[42 of 47] Compiling CLaSH.Signal.Delayed ( src/CLaSH/Signal/Delayed.hs, dist/build/CLaSH/Signal/Delayed.o )
[43 of 47] Compiling CLaSH.Annotations.TopEntity ( src/CLaSH/Annotations/TopEntity.hs, dist/build/CLaSH/Annotations/TopEntity.o )
[44 of 47] Compiling CLaSH.Prelude.Safe ( src/CLaSH/Prelude/Safe.hs, dist/build/CLaSH/Prelude/Safe.o )
[45 of 47] Compiling CLaSH.Prelude    ( src/CLaSH/Prelude.hs, dist/build/CLaSH/Prelude.o )
[46 of 47] Compiling CLaSH.Tutorial   ( src/CLaSH/Tutorial.hs, dist/build/CLaSH/Tutorial.o )
[47 of 47] Compiling CLaSH.Examples   ( src/CLaSH/Examples.hs, dist/build/CLaSH/Examples.o )
Preprocessing test suite 'doctests' for clash-prelude-0.10.7...
[1 of 1] Compiling Main             ( tests/doctests.hs, dist/build/doctests/doctests-tmp/Main.o )
Linking dist/build/doctests/doctests ...
> /tmp/stackage-build9/clash-prelude-0.10.7$ dist/build/doctests/doctests
christiaanb commented 8 years ago

Thanks for the report. I'll check it out on my own machine to see what is exactly going on.

christiaanb commented 8 years ago

I think some sort of watchdog/timeout is triggered because the testsuite is going into an infinite loop on my machine.

The problem is, in my testsuite I have code that, on ghc 7.10 would result in an "Exception: <>" error, which I would catch. However, on ghc 8.0.1, it seems that this code no longer triggers the "Exception <>", but actually goes into an infinite loop...

bergmark commented 8 years ago

New output, but still broken unfortunately

> /tmp/stackage-build8/clash-prelude-0.10.14$ runghc -clear-package-db -global-package-db -package-db=/var/stackage/work/builds/nightly/pkgdb Setup configure --enable-tests --package-db=clear --package-db=global --package-db=/var/stackage/work/builds/nightly/pkgdb --libdir=/var/stackage/work/builds/nightly/lib --bindir=/var/stackage/work/builds/nightly/bin --datadir=/var/stackage/work/builds/nightly/share --libexecdir=/var/stackage/work/builds/nightly/libexec --sysconfdir=/var/stackage/work/builds/nightly/etc --docdir=/var/stackage/work/builds/nightly/doc/clash-prelude-0.10.14 --htmldir=/var/stackage/work/builds/nightly/doc/clash-prelude-0.10.14 --haddockdir=/var/stackage/work/builds/nightly/doc/clash-prelude-0.10.14 --flags=
Configuring clash-prelude-0.10.14...
> /tmp/stackage-build8/clash-prelude-0.10.14$ runghc -clear-package-db -global-package-db -package-db=/var/stackage/work/builds/nightly/pkgdb Setup build
Building clash-prelude-0.10.14...
Preprocessing library clash-prelude-0.10.14...
[ 1 of 48] Compiling CLaSH.Sized.Internal.Index[boot] ( src/CLaSH/Sized/Internal/Index.hs-boot, dist/build/CLaSH/Sized/Internal/Index.o-boot )
[ 2 of 48] Compiling CLaSH.Sized.Internal.BitVector[boot] ( src/CLaSH/Sized/Internal/BitVector.hs-boot, dist/build/CLaSH/Sized/Internal/BitVector.o-boot )
[ 3 of 48] Compiling CLaSH.Sized.Vector[boot] ( src/CLaSH/Sized/Vector.hs-boot, dist/build/CLaSH/Sized/Vector.o-boot )
[ 4 of 48] Compiling CLaSH.Promoted.Symbol ( src/CLaSH/Promoted/Symbol.hs, dist/build/CLaSH/Promoted/Symbol.o )
[ 5 of 48] Compiling CLaSH.Promoted.Ord ( src/CLaSH/Promoted/Ord.hs, dist/build/CLaSH/Promoted/Ord.o )
[ 6 of 48] Compiling CLaSH.Promoted.Nat ( src/CLaSH/Promoted/Nat.hs, dist/build/CLaSH/Promoted/Nat.o )
[ 7 of 48] Compiling CLaSH.Promoted.Nat.TH ( src/CLaSH/Promoted/Nat/TH.hs, dist/build/CLaSH/Promoted/Nat/TH.o )
[ 8 of 48] Compiling CLaSH.Promoted.Nat.Literals ( src/CLaSH/Promoted/Nat/Literals.hs, dist/build/CLaSH/Promoted/Nat/Literals.o )
[ 9 of 48] Compiling CLaSH.Promoted.Nat.Unsafe ( src/CLaSH/Promoted/Nat/Unsafe.hs, dist/build/CLaSH/Promoted/Nat/Unsafe.o )
[10 of 48] Compiling CLaSH.Sized.RTree ( src/CLaSH/Sized/RTree.hs, dist/build/CLaSH/Sized/RTree.o )
[11 of 48] Compiling CLaSH.Class.Resize ( src/CLaSH/Class/Resize.hs, dist/build/CLaSH/Class/Resize.o )
[12 of 48] Compiling CLaSH.Class.Num  ( src/CLaSH/Class/Num.hs, dist/build/CLaSH/Class/Num.o )
[13 of 48] Compiling CLaSH.Signal.Internal ( src/CLaSH/Signal/Internal.hs, dist/build/CLaSH/Signal/Internal.o )
[14 of 48] Compiling CLaSH.Sized.Internal.BitVector ( src/CLaSH/Sized/Internal/BitVector.hs, dist/build/CLaSH/Sized/Internal/BitVector.o )
[15 of 48] Compiling CLaSH.Sized.BitVector ( src/CLaSH/Sized/BitVector.hs, dist/build/CLaSH/Sized/BitVector.o )
[16 of 48] Compiling CLaSH.Class.BitPack ( src/CLaSH/Class/BitPack.hs, dist/build/CLaSH/Class/BitPack.o )
[17 of 48] Compiling CLaSH.Prelude.BitIndex ( src/CLaSH/Prelude/BitIndex.hs, dist/build/CLaSH/Prelude/BitIndex.o )
[18 of 48] Compiling CLaSH.Prelude.BitReduction ( src/CLaSH/Prelude/BitReduction.hs, dist/build/CLaSH/Prelude/BitReduction.o )
[19 of 48] Compiling CLaSH.Sized.Internal.Index ( src/CLaSH/Sized/Internal/Index.hs, dist/build/CLaSH/Sized/Internal/Index.o )
[20 of 48] Compiling CLaSH.Sized.Index ( src/CLaSH/Sized/Index.hs, dist/build/CLaSH/Sized/Index.o )
[21 of 48] Compiling CLaSH.Sized.Vector ( src/CLaSH/Sized/Vector.hs, dist/build/CLaSH/Sized/Vector.o )

src/CLaSH/Sized/Vector.hs:1145:1: warning: [-Wredundant-constraints]
    • Redundant constraint: CmpNat (i + s) (s * n) ~ 'GT
    • In the type signature for:
           select :: CmpNat (i + s) (s * n) ~ 'GT =>
                     SNat f -> SNat s -> SNat n -> Vec (f + i) a -> Vec n a
[22 of 48] Compiling CLaSH.Sized.Internal.Signed ( src/CLaSH/Sized/Internal/Signed.hs, dist/build/CLaSH/Sized/Internal/Signed.o )
[23 of 48] Compiling CLaSH.Sized.Signed ( src/CLaSH/Sized/Signed.hs, dist/build/CLaSH/Sized/Signed.o )
[24 of 48] Compiling CLaSH.Sized.Internal.Unsigned ( src/CLaSH/Sized/Internal/Unsigned.hs, dist/build/CLaSH/Sized/Internal/Unsigned.o )
[25 of 48] Compiling CLaSH.Sized.Unsigned ( src/CLaSH/Sized/Unsigned.hs, dist/build/CLaSH/Sized/Unsigned.o )
[26 of 48] Compiling CLaSH.Sized.Fixed ( src/CLaSH/Sized/Fixed.hs, dist/build/CLaSH/Sized/Fixed.o )
[27 of 48] Compiling CLaSH.Signal.Bundle ( src/CLaSH/Signal/Bundle.hs, dist/build/CLaSH/Signal/Bundle.o )
[28 of 48] Compiling CLaSH.Signal.Explicit ( src/CLaSH/Signal/Explicit.hs, dist/build/CLaSH/Signal/Explicit.o )
[29 of 48] Compiling CLaSH.Signal     ( src/CLaSH/Signal.hs, dist/build/CLaSH/Signal.o )
[30 of 48] Compiling CLaSH.Prelude.BlockRam ( src/CLaSH/Prelude/BlockRam.hs, dist/build/CLaSH/Prelude/BlockRam.o )
[31 of 48] Compiling CLaSH.Prelude.BlockRam.File ( src/CLaSH/Prelude/BlockRam/File.hs, dist/build/CLaSH/Prelude/BlockRam/File.o )
[32 of 48] Compiling CLaSH.Prelude.Mealy ( src/CLaSH/Prelude/Mealy.hs, dist/build/CLaSH/Prelude/Mealy.o )
[33 of 48] Compiling CLaSH.Prelude.DataFlow ( src/CLaSH/Prelude/DataFlow.hs, dist/build/CLaSH/Prelude/DataFlow.o )

src/CLaSH/Prelude/DataFlow.hs:540:10: warning: [-Wredundant-constraints]
    • Redundant constraint: KnownNat m
    • In the instance declaration for ‘LockStep (Vec m en) (Vec m a)’
[34 of 48] Compiling CLaSH.Prelude.Moore ( src/CLaSH/Prelude/Moore.hs, dist/build/CLaSH/Prelude/Moore.o )
[35 of 48] Compiling CLaSH.Prelude.RAM ( src/CLaSH/Prelude/RAM.hs, dist/build/CLaSH/Prelude/RAM.o )
[36 of 48] Compiling CLaSH.Prelude.ROM ( src/CLaSH/Prelude/ROM.hs, dist/build/CLaSH/Prelude/ROM.o )
[37 of 48] Compiling CLaSH.Prelude.ROM.File ( src/CLaSH/Prelude/ROM/File.hs, dist/build/CLaSH/Prelude/ROM/File.o )
[38 of 48] Compiling CLaSH.Prelude.Synchronizer ( src/CLaSH/Prelude/Synchronizer.hs, dist/build/CLaSH/Prelude/Synchronizer.o )
[39 of 48] Compiling CLaSH.Prelude.Explicit.Safe ( src/CLaSH/Prelude/Explicit/Safe.hs, dist/build/CLaSH/Prelude/Explicit/Safe.o )
[40 of 48] Compiling CLaSH.Prelude.Testbench ( src/CLaSH/Prelude/Testbench.hs, dist/build/CLaSH/Prelude/Testbench.o )
[41 of 48] Compiling CLaSH.Prelude.Explicit ( src/CLaSH/Prelude/Explicit.hs, dist/build/CLaSH/Prelude/Explicit.o )
[42 of 48] Compiling CLaSH.Signal.Delayed.Explicit ( src/CLaSH/Signal/Delayed/Explicit.hs, dist/build/CLaSH/Signal/Delayed/Explicit.o )
[43 of 48] Compiling CLaSH.Signal.Delayed ( src/CLaSH/Signal/Delayed.hs, dist/build/CLaSH/Signal/Delayed.o )
[44 of 48] Compiling CLaSH.Annotations.TopEntity ( src/CLaSH/Annotations/TopEntity.hs, dist/build/CLaSH/Annotations/TopEntity.o )
[45 of 48] Compiling CLaSH.Prelude.Safe ( src/CLaSH/Prelude/Safe.hs, dist/build/CLaSH/Prelude/Safe.o )
[46 of 48] Compiling CLaSH.Prelude    ( src/CLaSH/Prelude.hs, dist/build/CLaSH/Prelude.o )
[47 of 48] Compiling CLaSH.Tutorial   ( src/CLaSH/Tutorial.hs, dist/build/CLaSH/Tutorial.o )
[48 of 48] Compiling CLaSH.Examples   ( src/CLaSH/Examples.hs, dist/build/CLaSH/Examples.o )
Preprocessing test suite 'doctests' for clash-prelude-0.10.14...
[1 of 1] Compiling Main             ( tests/doctests.hs, dist/build/doctests/doctests-tmp/Main.o )
Linking dist/build/doctests/doctests ...
> /tmp/stackage-build8/clash-prelude-0.10.14$ dist/build/doctests/doctests
### Failure in src/CLaSH/Prelude.hs:198: expression `simulateB window4 [1::Int,2,3,4,5] :: [Vec 4 Int]'
expected: [<1,0,0,0>,<2,1,0,0>,<3,2,1,0>,<4,3,2,1>,<5,4,3,2>...
 but got: [<1,0,0,0>,<2,1,0,0>,<3,2,1,0>,<4,3,2,1>,<5,4,3,2>*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude.hs:211: expression `simulateB windowD3 [1::Int,2,3,4] :: [Vec 3 Int]'
expected: [<0,0,0>,<1,0,0>,<2,1,0>,<3,2,1>,<4,3,2>...
 but got: [<0,0,0>,<1,0,0>,<2,1,0>,<3,2,1>,<4,3,2>*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Safe.hs:172: expression `simulateB rP [(1,1),(2,2),(3,3)] :: [(Int,Int)]'
expected: [(8,8),(1,1),(2,2),(3,3)...
 but got: [(8,8),(1,1),(2,2),(3,3)*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Explicit.hs:96: expression `simulateB' clkA clkA window4 [1::Int,2,3,4,5] :: [Vec 4 Int]'
expected: [<1,0,0,0>,<2,1,0,0>,<3,2,1,0>,<4,3,2,1>,<5,4,3,2>...
 but got: [<1,0,0,0>,<2,1,0,0>,<3,2,1,0>,<4,3,2,1>,<5,4,3,2>*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Explicit.hs:124: expression `simulateB' clkA clkA windowD3 [1::Int,2,3,4] :: [Vec 3 Int]'
expected: [<0,0,0>,<1,0,0>,<2,1,0>,<3,2,1>,<4,3,2>...
 but got: [<0,0,0>,<1,0,0>,<2,1,0>,<3,2,1>,<4,3,2>*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Explicit/Safe.hs:86: expression `simulateB' clkA clkA rP [(1,1),(2,2),(3,3)] :: [(Int,Int)]'
expected: [(8,8),(1,1),(2,2),(3,3)...
 but got: [(8,8),(1,1),(2,2),(3,3)*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Moore.hs:59: expression `simulate topEntity [(1,1),(2,2),(3,3),(4,4)]'
expected: [0,1,5,14...
 but got: [0,1,5,14,30,*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Moore.hs:142: expression `simulate topEntity [(1,1),(2,2),(3,3),(4,4)]'
expected: [0,1,5,14...
 but got: [0,1,5,14,30,*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Mealy.hs:68: expression `simulate topEntity [(1,1),(2,2),(3,3),(4,4)]'
expected: [0,1,5,14...
 but got: [0,1,5,14,*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/Mealy.hs:159: expression `simulate topEntity [(1,1),(2,2),(3,3),(4,4)]'
expected: [0,1,5,14...
 but got: [0,1,5,14,*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Prelude/BlockRam.hs:551: expression `:t readNew (blockRam (0 :> 1 :> Nil))'
expected: readNew (blockRam (0 :> 1 :> Nil))
            :: (Enum addr, Eq addr, Num a) =>
               Signal addr -> Signal addr -> Signal Bool -> Signal a -> Signal a
 but got: readNew (blockRam (0 :> 1 :> Nil))
            :: (Num a, Eq addr, Enum addr) =>
               Signal addr -> Signal addr -> Signal Bool -> Signal a -> Signal a
### Failure in src/CLaSH/Signal.hs:167: expression `simulateB (unbundle . register (8,8) . bundle) [(1,1), (2,2), (3,3)] :: [(Int,Int)]'
expected: [(8,8),(1,1),(2,2),(3,3)...
 but got: [(8,8),(1,1),(2,2),(3,3)*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Signal/Explicit.hs:338: expression `simulateB' clkA clkA (unbundle' clkA . register' clkA (8,8) . bundle' clkA) [(1,1), (2,2), (3,3)] :: [(Int,Int)]'
expected: [(8,8),(1,1),(2,2),(3,3)...
 but got: [(8,8),(1,1),(2,2),(3,3)*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
### Failure in src/CLaSH/Sized/Vector.hs:291: expression `head Nil'
expected: 
          <interactive>:...
              Couldn't match type ‘...’ with ‘0’
              Expected type: Vec ... a
                Actual type: Vec 0 a
              In the first argument of ‘head’, namely ‘Nil’
              In the expression: head Nil
 but got: 
          <interactive>:3680:6: error:
              • Couldn't match type ‘1’ with ‘0’
                Expected type: Vec (0 + 1) a
                  Actual type: Vec 0 a
              • In the first argument of ‘head’, namely ‘Nil’
                In the expression: head Nil
                In an equation for ‘it’: it = head Nil
### Failure in src/CLaSH/Sized/Vector.hs:307: expression `tail Nil'
expected: 
          <interactive>:...
              Couldn't match type ‘...’ with ‘0’
              Expected type: Vec ... a
                Actual type: Vec 0 a
              In the first argument of ‘tail’, namely ‘Nil’
              In the expression: tail Nil
 but got: 
          <interactive>:3742:6: error:
              • Couldn't match type ‘1’ with ‘0’
                Expected type: Vec (0 + 1) a
                  Actual type: Vec 0 a
              • In the first argument of ‘tail’, namely ‘Nil’
                In the expression: tail Nil
                In an equation for ‘it’: it = tail Nil
### Failure in src/CLaSH/Sized/Vector.hs:323: expression `last Nil'
expected: 
          <interactive>:...
              Couldn't match type ‘...’ with ‘0’
              Expected type: Vec ... a
                Actual type: Vec 0 a
              In the first argument of ‘last’, namely ‘Nil’
              In the expression: last Nil
 but got: 
          <interactive>:3804:6: error:
              • Couldn't match type ‘1’ with ‘0’
                Expected type: Vec (0 + 1) a
                  Actual type: Vec 0 a
              • In the first argument of ‘last’, namely ‘Nil’
                In the expression: last Nil
                In an equation for ‘it’: it = last Nil
### Failure in src/CLaSH/Sized/Vector.hs:340: expression `init Nil'
expected: 
          <interactive>:...
              Couldn't match type ‘...’ with ‘0’
              Expected type: Vec ... a
                Actual type: Vec 0 a
              In the first argument of ‘init’, namely ‘Nil’
              In the expression: init Nil
 but got: 
          <interactive>:3866:6: error:
              • Couldn't match type ‘1’ with ‘0’
                Expected type: Vec (0 + 1) a
                  Actual type: Vec 0 a
              • In the first argument of ‘init’, namely ‘Nil’
                In the expression: init Nil
                In an equation for ‘it’: it = init Nil
### Failure in src/CLaSH/Sized/Vector.hs:577: expression `imap (+) (2 :> 2 :> 2 :> 2 :> Nil)'
expected: <2,3,*** Exception: CLaSH.Sized.Index: result 4 is out of bounds: [0..3]
 but got: <2,3,*** Exception: CLaSH.Sized.Index: result 4 is out of bounds: [0..3]
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Internal/Index.hs:216:13 in main:CLaSH.Sized.Internal.Index
### Failure in src/CLaSH/Sized/Vector.hs:595: expression `izipWith (\i a b -> i + a + b) (2 :> 2 :> Nil)  (3 :> 3:> Nil)'
expected: <*** Exception: CLaSH.Sized.Index: result 3 is out of bounds: [0..1]
 but got: <*** Exception: CLaSH.Sized.Index: result 3 is out of bounds: [0..1]
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Internal/Index.hs:216:13 in main:CLaSH.Sized.Internal.Index
### Failure in src/CLaSH/Sized/Vector.hs:1013: expression `(1:>2:>3:>4:>5:>Nil) !! 14'
expected: *** Exception: CLaSH.Sized.Vector.(!!): index 14 is larger than maximum index 4
 but got: *** Exception: CLaSH.Sized.Vector.(!!): index 14 is larger than maximum index 4
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Vector.hs:992:21 in main:CLaSH.Sized.Vector
### Failure in src/CLaSH/Sized/Vector.hs:1062: expression `replace 9 7 (1:>2:>3:>4:>5:>Nil)'
expected: <1,2,3,4,*** Exception: CLaSH.Sized.Vector.replace: index 9 is larger than maximum index 4
 but got: <1,2,3,4,*** Exception: CLaSH.Sized.Vector.replace: index 9 is larger than maximum index 4
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Vector.hs:1042:23 in main:CLaSH.Sized.Vector
### Failure in src/CLaSH/Sized/Vector.hs:1076: expression `take d4               (1:>2:>Nil)'
expected: 
          <interactive>:...
              Couldn't match type ‘4 + n0’ with ‘2’
              The type variable ‘n0’ is ambiguous
              Expected type: Vec (4 + n0) a
                Actual type: Vec (1 + 1) a
              In the second argument of ‘take’, namely ‘(1 :> 2 :> Nil)’
              In the expression: take d4 (1 :> 2 :> Nil)
              In an equation for ‘it’: it = take d4 (1 :> 2 :> Nil)
 but got: 
          <interactive>:6502:24: error:
              • Couldn't match type ‘4 + n0’ with ‘2’
                Expected type: Vec (4 + n0) a
                  Actual type: Vec (1 + 1) a
                The type variable ‘n0’ is ambiguous
              • In the second argument of ‘take’, namely ‘(1 :> 2 :> Nil)’
                In the expression: take d4 (1 :> 2 :> Nil)
                In an equation for ‘it’: it = take d4 (1 :> 2 :> Nil)
### Failure in src/CLaSH/Sized/Vector.hs:1106: expression `drop d4               (1:>2:>Nil)'
expected: 
          <interactive>:...
              Couldn't match expected type ‘2’ with actual type ‘4 + n0’
              The type variable ‘n0’ is ambiguous
              In the first argument of ‘print’, namely ‘it’
              In a stmt of an interactive GHCi command: print it
 but got: 
          <interactive>:6628:1: error:
              • Couldn't match expected type ‘2’ with actual type ‘4 + n0’
                The type variable ‘n0’ is ambiguous
              • In the first argument of ‘print’, namely ‘it’
                In a stmt of an interactive GHCi command: print it
### Failure in src/CLaSH/Sized/Vector.hs:1189: expression `replicateI 6 :: Vec 5 Int'
expected: <6,6,6,6,6>
 but got: 
          <interactive>:6994:1: warning: [-Wdeprecations]
              In the use of ‘replicateI’
              (imported from CLaSH.Prelude, but defined in CLaSH.Sized.Vector):
              Deprecated: "Use 'repeat' instead of 'replicateI'"
          <6,6,6,6,6>
### Failure in src/CLaSH/Sized/Vector.hs:1312: expression `:t stencil2d d2 d2 (sum . map sum) xss'
expected: stencil2d d2 d2 (sum . map sum) xss :: Num a => Vec 3 (Vec 3 a)
 but got: stencil2d d2 d2 (sum . map sum) xss :: Num b => Vec 3 (Vec 3 b)
### Failure in src/CLaSH/Sized/Vector.hs:1644: expression `let append' xs ys = foldr (:>) ys xs'
expected: 
          <interactive>:...
              Occurs check: cannot construct the infinite type: ... ~ ... + 1
              Expected type: a -> Vec ... a -> Vec ... a
                Actual type: a -> Vec ... a -> Vec (... + 1) a
              Relevant bindings include
                ys :: Vec ... a (bound at ...)
                append' :: Vec n a -> Vec ... a -> Vec ... a
                  (bound at ...)
              In the first argument of ‘foldr’, namely ‘(:>)’
              In the expression: foldr (:>) ys xs
 but got: 
          <interactive>:8382:27: error:
              • Occurs check: cannot construct the infinite type: t ~ t + 1
                Expected type: a -> Vec t a -> Vec t a
                  Actual type: a -> Vec t a -> Vec (t + 1) a
              • In the first argument of ‘foldr’, namely ‘(:>)’
                In the expression: foldr (:>) ys xs
                In an equation for ‘append'’: append' xs ys = foldr (:>) ys xs
              • Relevant bindings include
                  ys :: Vec t a (bound at <interactive>:8382:16)
                  append' :: Vec n a -> Vec t a -> Vec t a
                    (bound at <interactive>:8382:5)
### Failure in src/CLaSH/Sized/Internal/Index.hs:93: expression `2 + 6 :: Index 8'
expected: *** Exception: CLaSH.Sized.Index: result 8 is out of bounds: [0..7]
 but got: *** Exception: CLaSH.Sized.Index: result 8 is out of bounds: [0..7]
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Internal/Index.hs:216:13 in main:CLaSH.Sized.Internal.Index
### Failure in src/CLaSH/Prelude/BitIndex.hs:42: expression `(7 :: Unsigned 6) ! 6'
expected: *** Exception: (!): 6 is out of range [5..0]
 but got: *** Exception: (!): 6 is out of range [5..0]
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Internal/BitVector.hs:402:11 in main:CLaSH.Sized.Internal.BitVector
### Failure in src/CLaSH/Prelude/BitIndex.hs:56: expression `slice d6 d4 (7 :: Unsigned 6)'
expected: 
          <interactive>:...
              Couldn't match type ‘7 + i0’ with ‘6’
              The type variable ‘i0’ is ambiguous
              Expected type: (6 + 1) + i0
                Actual type: BitSize (Unsigned 6)
              In the expression: slice d6 d4 (7 :: Unsigned 6)
              In an equation for ‘it’: it = slice d6 d4 (7 :: Unsigned 6)
 but got: 
          <interactive>:8748:1: error:
              • Couldn't match type ‘7 + i0’ with ‘6’
                  arising from a use of ‘slice’
                The type variable ‘i0’ is ambiguous
              • In the expression: slice d6 d4 (7 :: Unsigned 6)
                In an equation for ‘it’: it = slice d6 d4 (7 :: Unsigned 6)
### Failure in src/CLaSH/Prelude/BitIndex.hs:96: expression `replaceBit 6 0 (-5 :: Signed 6)'
expected: *** Exception: replaceBit: 6 is out of range [5..0]
 but got: *** Exception: replaceBit: 6 is out of range [5..0]
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Sized/Internal/BitVector.hs:458:12 in main:CLaSH.Sized.Internal.BitVector
### Failure in src/CLaSH/Prelude/BitIndex.hs:113: expression `setSlice d6 d5 0 (-5 :: Signed 6)'
expected: 
          <interactive>:...
              Couldn't match type ‘7 + i0’ with ‘6’
              The type variable ‘i0’ is ambiguous
              Expected type: (6 + 1) + i0
                Actual type: BitSize (Signed 6)
              In the expression: setSlice d6 d5 0 (- 5 :: Signed 6)
              In an equation for ‘it’: it = setSlice d6 d5 0 (- 5 :: Signed 6)
 but got: 
          <interactive>:8796:1: error:
              • Couldn't match type ‘7 + i0’ with ‘6’
                  arising from a use of ‘setSlice’
                The type variable ‘i0’ is ambiguous
              • In the expression: setSlice d6 d5 0 (- 5 :: Signed 6)
                In an equation for ‘it’: it = setSlice d6 d5 0 (- 5 :: Signed 6)
### Failure in src/CLaSH/Signal/Internal.hs:691: expression `simulate (register 8) [1, 2, 3]'
expected: [8,1,2,3...
 but got: [8,1,2,3*** Exception: finite list
          CallStack (from HasCallStack):
            error, called at src/CLaSH/Signal/Internal.hs:684:32 in main:CLaSH.Signal.Internal
Examples: 517  Tried: 507  Errors: 0  Failures: 32
christiaanb commented 7 years ago

Fixed with the release of 0.11