Incoming breakage: Remove unnecessary ?Sized bound
#1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hello there 👋, I'm a member of the Rust compiler team.
?Sizedbounds in associated type bounds don't have any effect. The boundDeref<Target: ?Sized>can simply be replaced withDerefwithout any change in semantics (Targetis already maybe-sized since it's defined liketype Target: ?Sized;in the std library; writingDerefdoesn't implicitly add aSizedrequirement, nor does writingDeref<Target:>(sic!)).It's a bug in the current version of the Rust compiler that writing
TraitRef<AssocTy: ?Sized>is allowed, it should've been forbidden all along. See also rust-lang/rust#135229. The compiler bug is about to be fixed (rust-lang/rust#135331) and these relaxed bounds will soon become a hard error in this position! I sincerely apologize for the inconvenience!This future breakage was found with the help of crater (see the build log).