I'm trying to build Omega 1.5 on Debian unstable with Haskell Platform
2011.2.0.1 (GHC 7.0.3)
First build fails with
{{{
[17 of 31] Compiling RankN ( RankN.hs, RankN.o )
RankN.hs:120:5: Parse error in pattern: n + 1
make: *** [all] Error 1
}}}
After fixing n+k pattern in RankN.hs, I get the following error:
{{{
[17 of 31] Compiling RankN ( RankN.hs, RankN.o )
RankN.hs:1362:28:
Could not deduce (c ~ Tau)
from the context (TypeLike m c, Swap c)
bound by the type signature for
unBindWithL :: (TypeLike m c, Swap c) =>
[(TcLv, Level)]
-> (Name -> Quant -> Kind -> m Tau)
-> (c -> IO String)
-> L ([Pred], c)
-> m ([TcTv], [Pred], c)
at RankN.hs:(1358,1)-(1376,38)
`c' is a rigid type variable bound by
the type signature for
unBindWithL :: (TypeLike m c, Swap c) =>
[(TcLv, Level)]
-> (Name -> Quant -> Kind -> m Tau)
-> (c -> IO String)
-> L ([Pred], c)
-> m ([TcTv], [Pred], c)
at RankN.hs:1358:1
In the first argument of `patch', namely `r''
In the first argument of `mapM', namely `(patch r')'
In a stmt of a 'do' expression: mapM (patch r') env
RankN.hs:1367:32:
Couldn't match expected type `Tau' with actual type `Kind'
In the second argument of `subst', namely `k'
In a stmt of a 'do' expression: k2 <- subst env k
In a stmt of a 'do' expression: (n, xs) <- unbind b
make: *** [all] Error 1
}}}
This is fixed by adding a type signature to `subst` in the definition of
`unBindWithL`. Patch attached.
Original issue reported on code.google.com by reincarn...@gmail.com on 8 May 2011 at 2:01
Original issue reported on code.google.com by
reincarn...@gmail.com
on 8 May 2011 at 2:01Attachments: