(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.c-torture/
execute/
pr52979-1.c
       1  /* PR middle-end/52979 */
       2  
       3  /* { dg-require-effective-target int32plus } */
       4  
       5  extern void abort (void);
       6  int c, d, e;
       7  
       8  void
       9  foo (void)
      10  {
      11  }
      12  
      13  struct __attribute__((packed)) S { int g : 31; int h : 6; };
      14  struct S a = { 1 };
      15  static struct S b = { 1 };
      16  
      17  void
      18  bar (void)
      19  {
      20    a.h = 1;
      21    struct S f = { };
      22    b = f;
      23    e = 0;
      24    if (d)
      25      c = a.g;
      26  }
      27  
      28  void
      29  baz (void)
      30  {
      31    bar ();
      32    a = b;
      33  }
      34  
      35  int
      36  main ()
      37  {
      38    baz ();
      39    if (a.g)
      40      abort ();
      41    return 0;
      42  }