]> git.lizzy.rs Git - rust.git/blob - src/test/ui-fulldeps/uninit_mask.rs
Move `finish` out of the `Encoder` trait.
[rust.git] / src / test / ui-fulldeps / uninit_mask.rs
1 // run-pass
2 // ignore-cross-compile
3 // ignore-stage1
4
5 #![feature(rustc_private)]
6
7 extern crate rustc_middle;
8 extern crate rustc_target;
9
10 use rustc_middle::mir::interpret::InitMask;
11 use rustc_target::abi::Size;
12
13 fn main() {
14     let mut mask = InitMask::new(Size::from_bytes(500), false);
15     assert!(!mask.get(Size::from_bytes(499)));
16     mask.set(Size::from_bytes(499), true);
17     assert!(mask.get(Size::from_bytes(499)));
18     mask.set_range_inbounds(Size::from_bytes(100), Size::from_bytes(256), true);
19     for i in 0..100 {
20         assert!(!mask.get(Size::from_bytes(i)));
21     }
22     for i in 100..256 {
23         assert!(mask.get(Size::from_bytes(i)));
24     }
25     for i in 256..499 {
26         assert!(!mask.get(Size::from_bytes(i)));
27     }
28 }