blob: ed74bdf9371453d5b9325cb306709cf49b8d8cbe [file]
//! Regression test for <https://github.com/rust-lang/rust/issues/51102>.
//! Test matching non-existing fields via struct pattern syntax in closures doesn't ICE.
enum SimpleEnum {
NoState,
}
struct SimpleStruct {
no_state_here: u64,
}
fn main() {
let _ = |simple| {
match simple {
SimpleStruct {
state: 0,
//~^ ERROR struct `SimpleStruct` does not have a field named `state` [E0026]
..
} => (),
}
};
let _ = |simple| {
match simple {
SimpleStruct {
no_state_here: 0,
no_state_here: 1
//~^ ERROR field `no_state_here` bound multiple times in the pattern [E0025]
} => (),
}
};
let _ = |simple| {
match simple {
SimpleEnum::NoState {
state: 0
//~^ ERROR variant `SimpleEnum::NoState` does not have a field named `state` [E0026]
} => (),
}
};
}