> class Fallible m where
> fail_ :: String -> m a
> rethrow :: Fallible n => m a -> n b
GHC 2.10 (solaris) complains about this:
>> Cycle.lhs:2: Cycle in class declarations ... `Fallible' Cycle.lhs:4
Whereas Hugs (jan98) is fine with it.
I didn't see anything in the 1.4 report which forbids such declarations,
and haven't found anything in the ghc docs.
So, which system is doing the right thing?
Thanks
Paul Callaghan
(Of course, the problem goes away if I split the class and use the
superclass as a constraint in the subclass...)