diff --git a/crates/ide-diagnostics/src/handlers/mutability_errors.rs b/crates/ide-diagnostics/src/handlers/mutability_errors.rs index 6e30bf92dbaa..eefa1ac24add 100644 --- a/crates/ide-diagnostics/src/handlers/mutability_errors.rs +++ b/crates/ide-diagnostics/src/handlers/mutability_errors.rs @@ -1302,6 +1302,22 @@ fn main() { let mut var = 1; let mut func = || (var,) = (2,); func(); +} + "#, + ); + } + + #[test] + fn regression_20662() { + check_diagnostics( + r#" +//- minicore: index +pub trait A: core::ops::IndexMut { + type T: A; +} + +fn func(a: &mut impl A, b: &mut [i32]) { + b[0] += 1; } "#, );