Is there any legitimate use for a T: Drop trait bound?
T: Drop
As far as I can tell:
dyn Drop
(Vec<i32>, Vec<i32>)
Drop
Copy
Sounds like a useful clippy lint, at the very least.
Please do. In fact, I was going to propose it as a part of a larger proposal to overhaul Drop.
Using Drop::drop in any way is E0040, even just to mention it:
Drop::drop
let _ = <Vec<i32> as Drop>::drop;
I could see a lint about Drop bounds as an extension of this.
Have you seen T: Drop in practice?
I’ve seen new Rust programmers try to use Drop bounds as “has a destructor”. I think a lint would definitely make sense!