Does this handle changes from `T: U` to `T: V`?