| #![feature(core_intrinsics)] | |
| extern crate core; | |
| use core::intrinsics::discriminant_value; | |
| #[repr(usize)] | |
| enum MyWeirdOption<T> { | |
| None = 0, | |
| Some(T) = core::mem::size_of::<*mut T>(), | |
| //~^ ERROR generic parameters may not be used | |
| } | |
| fn main() { | |
| assert_eq!(discriminant_value(&MyWeirdOption::<()>::None), 0); | |
| assert_eq!(discriminant_value(&MyWeirdOption::Some(())), core::mem::size_of::<usize>()); | |
| } |