]> git.lizzy.rs Git - rust.git/blob - src/test/ui/nll/issue-57960.rs
Remove GlobalArenas and use Arena instead
[rust.git] / src / test / ui / nll / issue-57960.rs
1 // run-pass
2
3 #![allow(dead_code)]
4
5 trait Range {
6     const FIRST: u8;
7     const LAST: u8;
8 }
9
10 struct OneDigit;
11 impl Range for OneDigit {
12     const FIRST: u8 = 0;
13     const LAST: u8 = 9;
14 }
15
16 struct TwoDigits;
17 impl Range for TwoDigits {
18     const FIRST: u8 = 10;
19     const LAST: u8 = 99;
20 }
21
22 struct ThreeDigits;
23 impl Range for ThreeDigits {
24     const FIRST: u8 = 100;
25     const LAST: u8 = 255;
26 }
27
28 fn digits(x: u8) -> u32 {
29     match x {
30         OneDigit::FIRST...OneDigit::LAST => 1,
31         TwoDigits::FIRST...TwoDigits::LAST => 2,
32         ThreeDigits::FIRST...ThreeDigits::LAST => 3,
33         _ => unreachable!(),
34     }
35 }
36
37 fn main() {
38     assert_eq!(digits(100), 3);
39 }