Test NonZeroU8::new in a const context

This commit is contained in:
Dylan MacKenzie 2020-02-08 16:02:37 -08:00
parent 0b20ce97f7
commit 0755c41ae2

View File

@ -1,9 +1,18 @@
// build-pass (FIXME(62277): could be check-pass?)
// run-pass
#![feature(const_nonzero_int_methods)]
use std::num::NonZeroU8;
const X: NonZeroU8 = unsafe { NonZeroU8::new_unchecked(5) };
const Y: u8 = X.get();
const ZERO: Option<NonZeroU8> = NonZeroU8::new(0);
const ONE: Option<NonZeroU8> = NonZeroU8::new(1);
fn main() {
assert_eq!(Y, 5);
assert!(ZERO.is_none());
assert_eq!(ONE.unwrap().get(), 1);
}