1 #![feature(exclusive_range_pattern)]
2 #![deny(overlapping_range_endpoints)]
5 ($s:expr, $t1:pat, $t2:pat) => {
15 m!(0u8, 20..=30, 30..=40); //~ ERROR multiple patterns overlap on their endpoints
16 m!(0u8, 30..=40, 20..=30); //~ ERROR multiple patterns overlap on their endpoints
17 m!(0u8, 20..=30, 31..=40);
18 m!(0u8, 20..=30, 29..=40);
19 m!(0u8, 20.. 30, 29..=40); //~ ERROR multiple patterns overlap on their endpoints
20 m!(0u8, 20.. 30, 28..=40);
21 m!(0u8, 20.. 30, 30..=40);
22 m!(0u8, 20..=30, 30..=30);
23 m!(0u8, 20..=30, 30..=31); //~ ERROR multiple patterns overlap on their endpoints
24 m!(0u8, 20..=30, 29..=30);
25 m!(0u8, 20..=30, 20..=20);
26 m!(0u8, 20..=30, 20..=21);
27 m!(0u8, 20..=30, 19..=20); //~ ERROR multiple patterns overlap on their endpoints
39 10..=20 => {} //~ ERROR multiple patterns overlap on their endpoints
44 (10..20, true) => {} // not detected
50 (true, 10..20) => {} //~ ERROR multiple patterns overlap on their endpoints
56 Some(10..20) => {} //~ ERROR multiple patterns overlap on their endpoints