Hello,
The following code (coming from Vertigo), which compiles OK with
ghc-6.4.2, is rejected by ghc in HEAD (from this week-end) :
data Range = Range String Float Float Float
class AsRange nrs ns | nrs -> ns where
asRange :: nrs -> (ns, [Range])
instance (AsRange rsa nsa, AsRange rsb nsb)
=> AsRange (rsa, rsb) (nsa, nsb) where
asRange (a, b) = ((nsa, nsb), rsa++rsb)
where
(nsa, rsa) = asRange a
(nsb, rsb) = asRange b
produces:
Illegal instance declaration for `AsRange (rsa, rsb) (nsa, nsb)'
(the Coverage Condition fails for one of the functional
dependencies)
In the instance declaration for `AsRange (rsa, rsb) (nsa, nsb)'
Is it normal ?
Thanks,
Alain
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc