1  /* PR middle-end/48335 */
       2  
       3  struct S { float d; };
       4  
       5  void bar (struct S);
       6  
       7  void
       8  f0 (int x)
       9  {
      10    struct S s = {.d = 0.0f };
      11    ((char *) &s.d)[0] = x;
      12    s.d *= 7.0;
      13    bar (s);
      14  }
      15  
      16  void
      17  f1 (int x)
      18  {
      19    struct S s = {.d = 0.0f };
      20    ((char *) &s.d)[1] = x;
      21    s.d *= 7.0;
      22    bar (s);
      23  }
      24  
      25  void
      26  f2 (int x)
      27  {
      28    struct S s = {.d = 0.0f };
      29    ((char *) &s.d)[2] = x;
      30    s.d *= 7.0;
      31    bar (s);
      32  }
      33  
      34  void
      35  f3 (int x)
      36  {
      37    struct S s = {.d = 0.0f };
      38    ((char *) &s.d)[3] = x;
      39    s.d *= 7.0;
      40    bar (s);
      41  }