1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/* { dg-do compile } */ /* { dg-options "-O2" } */ #ifdef __cplusplus typedef float _Decimal32 __attribute__((mode(SD))); #endif extern void foo (_Decimal32); _Decimal32 *p; extern int i; union U { _Decimal32 a; int b; } u; void blatz (void) { _Decimal32 d; u.b = i; d = u.a; foo (d); } void bar (void) { foo (*p); }