1 #![feature(exclusive_range_pattern)]
2 #![allow(clippy::match_same_arms)]
3 #![warn(clippy::match_wild_err_arm)]
5 fn match_wild_err_arm() {
6 let x: Result<i32, &str> = Ok(3);
9 Ok(3) => println!("ok"),
10 Ok(_) => println!("ok"),
11 Err(_) => panic!("err"),
15 Ok(3) => println!("ok"),
16 Ok(_) => println!("ok"),
21 Ok(3) => println!("ok"),
22 Ok(_) => println!("ok"),
29 Ok(3) => println!("ok"),
30 Ok(_) => println!("ok"),
34 // Allowed when used in `panic!`.
36 Ok(3) => println!("ok"),
37 Ok(_) => println!("ok"),
38 Err(_e) => panic!("{}", _e),
41 // Allowed when not with `panic!` block.
43 Ok(3) => println!("ok"),
44 Ok(_) => println!("ok"),
45 Err(_) => println!("err"),
48 // Allowed when used with `unreachable!`.
50 Ok(3) => println!("ok"),
51 Ok(_) => println!("ok"),
52 Err(_) => unreachable!(),
55 // Allowed when used with `unreachable!`.
57 Ok(3) => println!("ok"),
58 Ok(_) => println!("ok"),