#![crate_type = "lib"] #![feature(transmutability)] mod assert { use std::mem::TransmuteFrom; pub fn is_maybe_transmutable() where Dst: TransmuteFrom, { } } fn main() { pub union Uninit { a: [u8; usize::MAX], } #[repr(C)] struct ExplicitlyPadded(Uninit); assert::is_maybe_transmutable::<(), ExplicitlyPadded>(); //~^ ERROR `()` cannot be safely transmuted into `ExplicitlyPadded` assert::is_maybe_transmutable::(); //~^ ERROR `ExplicitlyPadded` cannot be safely transmuted into `()` }