modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/combine-hang.c (about)

     1  typedef union
     2  {
     3    double value;
     4    struct
     5    {
     6      unsigned long msw;
     7      unsigned long lsw;
     8    } parts;
     9  } ieee_double_shape_type;
    10  
    11  double f (int iy)
    12  {
    13    double z, t;
    14    ieee_double_shape_type u, v;
    15  
    16    if (iy == 1)
    17      return 0;
    18  
    19    u.parts.msw = iy;
    20    u.parts.lsw = 0;
    21    z = u.value;
    22    v.parts.msw = iy;
    23    v.parts.lsw = 0;
    24    t = v.value;
    25    return 1.0+z+t+t;
    26  }