blob: 42a062239d34addbc5f30a5ac616d268eaada333 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#![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>());
}
|