before calling it. This check was there when the objects were of the same type *before* coercion, but not if they initially differed but became the same *after* coercion.