I have found a construct that seems to work. At least I am getting no syntax errors when using it.
type
('a, 'b)graph_base when 'b :> graph_edge<'a> = class
val nodes : 'a array
val edges : 'b array
end
I have a question the dreaded syntax error is extremely uninformative. is it possible to enhance the compiler error reporting so that when a syntax error occurs the actual syntactical law that is being violated could be cited?
Thanks David