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! }