/* { dg-do compile } */ | |
/* { dg-options "-O1" } */ | |
typedef __complex__ double Value; | |
union U | |
{ | |
Value v; | |
char c[sizeof(Value)]; | |
}; | |
struct S | |
{ | |
union U u; | |
int i,j; | |
}; | |
Value gv; | |
int gi, gj; | |
Value foo (void) | |
{ | |
struct S s,t; | |
t.i = gi; | |
t.j = gj; | |
t.u.v = gv; | |
t.u.c[0] = 0; | |
s = t; | |
__imag__ s.u.v += s.i; | |
return s.u.v; | |
} |