https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115527

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Testcase more appropriate for the testsuite:

/* PR middle-end/115527 */

struct T { struct S { double a; signed char b; long c; } d[3]; int e; };

int
main ()
{
  struct T t = { { { 1., 2, 3 }, { 4., 5, 6 }, { 7., 8, 9 } }, 10 };
  __builtin_clear_padding (&t);
  for (int i = 0; i < 3; ++i)
    if (t.d[i].a != 1. + 3 * i
        || t.d[i].b != 3 * i + 2
        || t.d[i].c != 3 * i + 3)
      __builtin_abort ();
  if (t.e != 10)
    __builtin_abort ();
}

Reply via email to