2023-08-24 19:32:12 +00:00
|
|
|
//@aux-build:proc_macros.rs
|
2018-07-28 15:34:52 +00:00
|
|
|
#![warn(clippy::unneeded_field_pattern)]
|
2023-07-02 12:35:19 +00:00
|
|
|
#![allow(dead_code, unused)]
|
|
|
|
|
|
|
|
#[macro_use]
|
|
|
|
extern crate proc_macros;
|
2016-01-02 22:13:15 +00:00
|
|
|
|
|
|
|
struct Foo {
|
|
|
|
a: i32,
|
|
|
|
b: i32,
|
|
|
|
c: i32,
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let f = Foo { a: 0, b: 0, c: 0 };
|
|
|
|
|
|
|
|
match f {
|
2018-12-09 22:26:16 +00:00
|
|
|
Foo { a: _, b: 0, .. } => {},
|
2017-02-08 13:58:07 +00:00
|
|
|
|
2018-12-09 22:26:16 +00:00
|
|
|
Foo { a: _, b: _, c: _ } => {},
|
2016-01-02 22:13:15 +00:00
|
|
|
}
|
|
|
|
match f {
|
2018-12-09 22:26:16 +00:00
|
|
|
Foo { b: 0, .. } => {}, // should be OK
|
|
|
|
Foo { .. } => {}, // and the Force might be with this one
|
2016-01-02 22:13:15 +00:00
|
|
|
}
|
2023-07-02 12:35:19 +00:00
|
|
|
external! {
|
|
|
|
let f = Foo { a: 0, b: 0, c: 0 };
|
|
|
|
match f {
|
|
|
|
Foo { a: _, b: 0, .. } => {},
|
|
|
|
|
|
|
|
Foo { a: _, b: _, c: _ } => {},
|
|
|
|
}
|
|
|
|
}
|
2016-01-03 13:00:42 +00:00
|
|
|
}
|