An invalid cast was attempted. Erroneous code examples: ```compile_fail,E0605 let x = 0u8; x as Vec; // error: non-primitive cast: `u8` as `std::vec::Vec` // Another example let v = core::ptr::null::(); // So here, `v` is a `*const u8`. v as &u8; // error: non-primitive cast: `*const u8` as `&u8` ``` Only primitive types can be cast into each other. Examples: ``` let x = 0u8; x as u32; // ok! let v = core::ptr::null::(); v as *const i8; // ok! ``` For more information about casts, take a look at the Type cast section in [The Reference Book][1]. [1]: https://doc.rust-lang.org/reference/expressions/operator-expr.html#type-cast-expressions