Tomas Remes it would not violate the first restriction if it would return Carrot in getBaseType() ! But the wrapped AT violates this requirement by having a getTypeClosures() contain a class which is not contained in the the fully transitive type closure of getBaseType(). > The related disposal method has parameter with type Carrot Again, the spec paragraph clearly does not refer to type closures but to "return type". That's some different term and relates to getBaseType() in the AT afaict. |