| // Issue 62307 pointed out a case where the structural-match checking |
| // was too shallow. |
| // |
| // Here we check similar behavior for non-empty arrays of types that |
| // do not derive `Eq`. |
| // |
| // (Current behavior for empty arrays differs and thus is not tested |
| // here; see rust-lang/rust#62336.) |
| |
| #[derive(PartialEq, Debug)] |
| struct B(i32); |
| |
| fn main() { |
| const FOO: [B; 1] = [B(0)]; |
| match [B(1)] { |
| FOO => { } |
| //~^ ERROR must be annotated with `#[derive(PartialEq, Eq)]` |
| //~| ERROR must be annotated with `#[derive(PartialEq, Eq)]` |
| } |
| } |