Resolving dependencies... Downloading ip6addr-0.3.1... Configuring ip6addr-0.3.1... Building ip6addr-0.3.1... Preprocessing executable 'ip6addrcan' for ip6addr-0.3.1... [1 of 3] Compiling CidrSuffix ( src/CidrSuffix.hs, dist/build/ip6addrcan/ip6addrcan-tmp/CidrSuffix.o ) [2 of 3] Compiling IPv6Addr ( src/IPv6Addr.hs, dist/build/ip6addrcan/ip6addrcan-tmp/IPv6Addr.o ) src/IPv6Addr.hs:217:36: Could not deduce (Eq b) arising from a use of `/=' from the context (Num b) bound by the type signature for firstLongestZerosRunIndex :: Num b => [(Bool, b)] -> b -> b at src/IPv6Addr.hs:215:30-61 Possible fix: add (Eq b) to the context of the type signature for firstLongestZerosRunIndex :: Num b => [(Bool, b)] -> b -> b In the first argument of `takeWhile', namely `(/= (True, y))' In the second argument of `($)', namely `takeWhile (/= (True, y)) x' In the expression: sum . snd . unzip $ takeWhile (/= (True, y)) x Failed to install ip6addr-0.3.1 cabal: Error: some packages failed to install: ip6addr-0.3.1 failed during the building phase. The exception was: ExitFailure 1