Re: is there a way to build xmonad-contrib 0.9.2 on a system with ghc 7.4.1?
Thank you for your help with this, too. Now I get another error in a different file where simply appending Eq b' doesn't do the trick:
[170 of 180] Compiling XMonad.Actions.GridSelect ( XMonad/Actions/GridSelect.hs, dist/build/XMonad/Actions/GridSelect.o )
XMonad/Actions/GridSelect.hs:227:12:
Could not deduce (Eq b') arising from a use of `nub'
from the context (Enum b', Num b')
bound by the type signature for
diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]
at
XMonad/Actions/GridSelect.hs:(226,1)-(229,35)
Possible fix:
add (Eq b') to the context of
the type signature for
diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]
In the expression: nub
In the expression:
nub
$ ul
++
(map (negate *** id) ul)
++ (map (negate *** negate) ul) ++ (map (id *** negate) ul)
In the expression:
let ul = [... | x <- ...]
in
nub
$ ul
++
(map (negate *** id) ul)
++ (map (negate *** negate) ul) ++ (map (id *** negate) ul)
Following your earlier advice, I have tried replacing the line
diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]
with both
diamondLayer :: (Enum b', Num b', Eq b') => b' -> [(b', b')]
as well as
diamondLayer :: (Enum b', (Num b', Eq b')) => b'
-> [(b', b')]
but the compiler was unhappy about it in both occasions.
<div><div>
<div><span>Thank you for your help with this, too. Now I get another error in a different file where simply appending Eq b' doesn't do the trick:</span></div>
<div>
<br><span></span>
</div>
<div><span><br></span></div>
<div>[170 of 180] Compiling XMonad.Actions.GridSelect ( XMonad/Actions/GridSelect.hs, dist/build/XMonad/Actions/GridSelect.o )<br><br>XMonad/Actions/GridSelect.hs:227:12:<br> Could not deduce (Eq b') arising from a use of `nub'<br> from the context (Enum b', Num b')<br> bound by the type signature for<br> diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]<br> at
XMonad/Actions/GridSelect.hs:(226,1)-(229,35)<br> Possible fix:<br> add (Eq b') to the context of<br> the type signature for<br> diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]<br> In the expression: nub<br> In the expression:<br> nub<br> $ ul<br> ++<br> (map (negate *** id) ul)<br> ++ (map (negate *** negate) ul) ++ (map (id *** negate) ul)<br> In the expression:<br> let ul = [... | x <- ...]<br> in<br>
nub<br> $ ul<br> ++<br> (map (negate *** id) ul)<br> ++ (map (negate *** negate) ul) ++ (map (id *** negate) ul)<br><br><span></span>
</div>
<div><span><br></span></div>
<div>Following your earlier advice, I have tried replacing the line</div>
<div><br></div>
<div> diamondLayer :: (Enum b', Num b') => b' -> [(b', b')]</div>
<div><br></div>
<div>with both</div>
<div><br></div>
<div><br></div>
<div> diamondLayer :: (Enum b', Num b', Eq b') => b' -> [(b', b')]</div>
<div><br></div>
<div>as well as</div>
<div><br></div>
<div> diamondLayer :: (Enum b', (Num b', Eq b')) => b'
-> [(b', b')]</div>
<div><br></div>
<div>but the compiler was unhappy about it in both occasions.<br>
</div>
<div><br></div> </div></div>