Dear list, I'm having a little problem understanding constraints in objects. Consider the following code: class type foo = object method get_parent : foo end class type foo2 = object constraint foo2 = #foo method baz : float method get_parent : foo2 end it gives me the following error: The abbreviation foo2 expands to type < baz : float; get_parent : foo2 > but is used with type #foo but foo2 is clearly a subtype of foo. What am I doing wrong? I'm using ocaml 3.10.2 --Jacques Le Normand