### What it does Checks for transmutes between collections whose types have different ABI, size or alignment. ### Why is this bad? This is undefined behavior. ### Known problems Currently, we cannot know whether a type is a collection, so we just lint the ones that come with `std`. ### Example ``` // different size, therefore likely out-of-bounds memory access // You absolutely do not want this in your code! unsafe { std::mem::transmute::<_, Vec>(vec![2_u16]) }; ``` You must always iterate, map and collect the values: ``` vec![2_u16].into_iter().map(u32::from).collect::>(); ```