Error code E0076
The type of the field in a tuple struct isn't an array when using the #[simd]
attribute.
Erroneous code example:
#![allow(unused)] #![feature(repr_simd)] fn main() { #[repr(simd)] struct Bad(u16); // error! }
When using the #[simd]
attribute to automatically use SIMD operations in tuple
structs, if you want a single-lane vector then the field must be a 1-element
array, or the compiler will trigger this error.
Fixed example:
#![allow(unused)] #![feature(repr_simd)] fn main() { #[repr(simd)] struct Good([u16; 1]); // ok! }