check that overwritten types do not conflict with superclass types