__export ShouldSucceed A{op1} B{op2} f; instance {A PrelBase.Int} = zdfAInt; instance __forall [a] => {B a} -> {B [a]} = zdfBZMZN; 1 class A a where {op1 :: a} ; 1 class B b where {op2 :: b -> PrelBase.Int} ; 1 f :: __forall [t a] => {A a} -> t -> a ; 1 zddmop1 :: __forall [a] => {A a} -> a ; 1 zddmop2 :: __forall [b] => {B b} -> b -> PrelBase.Int ; 1 zdfAInt :: {A PrelBase.Int} ; 1 zdfBZMZN :: __forall [a] => {B a} -> {B [a]} ;