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