summaryrefslogtreecommitdiffstats
path: root/tests/ui/rfcs/rfc-1445-restrict-constants-in-patterns/match-nonempty-array-forbidden-without-eq.rs
blob: 151a475c9190644e6423056229902d45b842e4f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// 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)]`
    }
}