]>
Commit | Line | Data |
---|---|---|
b7449926 XL |
1 | // run-pass |
2 | #![allow(non_snake_case)] | |
3 | ||
0531ce1d XL |
4 | // ignore-emscripten FIXME(#45351) |
5 | ||
3b2f2976 XL |
6 | #![feature(repr_simd, platform_intrinsics)] |
7 | ||
60c5eb7d | 8 | #[repr(C)] //~ WARNING conflicting representation hints |
3b2f2976 XL |
9 | #[repr(simd)] |
10 | #[derive(Copy, Clone, Debug)] | |
11 | pub struct char3(pub i8, pub i8, pub i8); | |
12 | ||
60c5eb7d | 13 | #[repr(C)] //~ WARNING conflicting representation hints |
3b2f2976 XL |
14 | #[repr(simd)] |
15 | #[derive(Copy, Clone, Debug)] | |
16 | pub struct short3(pub i16, pub i16, pub i16); | |
17 | ||
18 | extern "platform-intrinsic" { | |
19 | fn simd_cast<T, U>(x: T) -> U; | |
20 | } | |
21 | ||
7453a54e | 22 | fn main() { |
3b2f2976 XL |
23 | let cast: short3 = unsafe { simd_cast(char3(10, -3, -9)) }; |
24 | ||
25 | println!("{:?}", cast); | |
223e47cc | 26 | } |