2024-07-29 11:50:12 -05:00
|
|
|
#![feature(offset_of_enum)]
|
2023-04-21 03:53:34 -05:00
|
|
|
|
|
|
|
use std::mem::offset_of;
|
|
|
|
|
|
|
|
enum Alpha {
|
|
|
|
One(u8),
|
|
|
|
Two(u8),
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
offset_of!(Alpha::One, 0); //~ ERROR expected type, found variant `Alpha::One`
|
2023-08-15 14:10:45 -05:00
|
|
|
offset_of!(Alpha, One); //~ ERROR `One` is an enum variant; expected field at end of `offset_of`
|
|
|
|
offset_of!(Alpha, Two.0);
|
2023-08-15 16:32:55 -05:00
|
|
|
offset_of!(Alpha, Two.1); //~ ERROR no field named `1` on enum variant `Alpha::Two`
|
|
|
|
offset_of!(Alpha, Two.foo); //~ ERROR no field named `foo` on enum variant `Alpha::Two`
|
|
|
|
offset_of!(Alpha, NonExistent); //~ ERROR no variant named `NonExistent` found for enum `Alpha`
|
2023-10-31 18:41:40 -05:00
|
|
|
offset_of!(Beta, One); //~ ERROR cannot find type `Beta` in this scope
|
2023-04-21 03:53:34 -05:00
|
|
|
}
|