45 lines
1.0 KiB
Rust
45 lines
1.0 KiB
Rust
//@ run-rustfix
|
|
|
|
#![allow(unused)]
|
|
|
|
use Foo::{FooB, FooA};
|
|
|
|
enum Foo {
|
|
FooA { opt_x: Option<i32>, y: i32 },
|
|
FooB { x: i32, y: i32 }
|
|
}
|
|
|
|
fn main() {
|
|
let f = FooB { x: 3, y: 4 };
|
|
|
|
match f {
|
|
FooB { x: a, y: b } => println!("{} {}", a, b),
|
|
//~^ ERROR expected tuple struct or tuple variant, found variant `FooB`
|
|
_ => (),
|
|
}
|
|
|
|
match f {
|
|
FooB { x, y } => println!("{} {}", x, y),
|
|
//~^ ERROR expected tuple struct or tuple variant, found variant `FooB`
|
|
_ => (),
|
|
}
|
|
|
|
match f {
|
|
FooA { opt_x: Some(x), y } => println!("{} {}", x, y),
|
|
//~^ ERROR expected tuple struct or tuple variant, found variant `FooA`
|
|
_ => (),
|
|
}
|
|
|
|
match f {
|
|
FooB { x: a, y: _ } => println!("{}", a),
|
|
//~^ ERROR expected tuple struct or tuple variant, found variant `FooB`
|
|
_ => (),
|
|
}
|
|
|
|
match f {
|
|
FooB { x, y } => (),
|
|
//~^ ERROR expected tuple struct or tuple variant, found variant `FooB`
|
|
_ => (),
|
|
}
|
|
}
|