With the following code ```rust fn main() { #[derive(Copy, Clone)] enum Void {} union A { a: (), v: Void } let a = A { a: () }; match a.v { } } ``` it is possible to invoke undefined behaviour in safe code without using unstable features.