relaxed `?Sized` bound getting implied by super trait warn
Open
@CrooseGit is already working on this.
Since Jul 30, 2025.
A-lints
A-type-system
C-feature-request
E-medium
T-compiler
- Dominant language
- Rust
- Stars
- 119k
- Forks
- 16.1k
- PR merge metrics
- PR metrics pending
Description
the following code should lint that the ?Sized bound is unused:'
trait Proj {
type Assoc: Clone + ?Sized;
}
fn foo<T: ?Sized + Clone>() {}
we imply Sized as it's a super trait of Clone, so the ?Sized bound does not do anything.
cc @davidtwco, related to sized_hierarchy migration stuff
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.