The following code doesn't compile, but it seems sensible enough to me.  Is
this a limitation of GHC or is there something I'm missing?

class C (A x) => C x where
  type A x :: *
instance C Int where
  type A Int = String
instance C String where
  type A String = Int


The error I get is:


SuperclassCycle.hs:1:1:
    Cycle in class declarations (via superclasses):
      SuperclassCycle.hs:(1,1)-(2,15): class C (A x) => C x where {
                                           type family A x :: *; }



Ryan
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to