2020-10-06 15:53:12 -05:00
|
|
|
// run-pass
|
|
|
|
|
2020-10-16 16:15:57 -05:00
|
|
|
#![allow(incomplete_features)]
|
2021-11-22 10:25:28 -06:00
|
|
|
#![feature(inline_const_pat)]
|
2020-10-06 15:53:12 -05:00
|
|
|
const MMIO_BIT1: u8 = 4;
|
|
|
|
const MMIO_BIT2: u8 = 5;
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let s = match read_mmio() {
|
|
|
|
0 => "FOO",
|
|
|
|
const { 1 << MMIO_BIT1 } => "BAR",
|
|
|
|
const { 1 << MMIO_BIT2 } => "BAZ",
|
|
|
|
_ => unreachable!(),
|
|
|
|
};
|
|
|
|
|
|
|
|
assert_eq!("BAZ", s);
|
|
|
|
}
|
|
|
|
|
|
|
|
fn read_mmio() -> i32 {
|
|
|
|
1 << 5
|
|
|
|
}
|