In a scenario like
```
struct Type;
pub trait Trait {
fn function(&mut self)
where
Self: Sized;
}
impl Trait for Type {
fn function(&mut self) {}
}
fn main() {
(&mut Type as &mut dyn Trait).function();
}
```
the problem is Sized, not the mutability of self. Thus don't emit the
"you need &T instead of &mut T" note, or the other way around, as all
it does is just invert the mutability of whatever was supplied.
Fixes #103622.
|
||
|---|---|---|
| .. | ||
| mutability-mismatch.rs | ||
| mutability-mismatch.stderr | ||
| regular.rs | ||
| regular.stderr | ||