3 struct S { short a, b; };
4 struct T { float a[16]; };
5 struct U { int b[16]; };
7 #if __SIZEOF_FLOAT__ == __SIZEOF_INT__
11 return __builtin_bit_cast (int, x);
15 #if 2 * __SIZEOF_SHORT__ == __SIZEOF_INT__
19 return __builtin_bit_cast (S, x);
25 return __builtin_bit_cast (int, x);
29 #if __SIZEOF_FLOAT__ == __SIZEOF_INT__
33 return __builtin_bit_cast (U, x);
39 return __builtin_bit_cast (T, x);
46 return __builtin_bit_cast (unsigned char, (signed char) 0);