aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/torture/pr113727.c
blob: f92ddad5c8e366b5efb287b5f792ee6bcc3b5165 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* { dg-do run } */
/* { dg-require-effective-target int32plus } */

struct f {
  unsigned au : 5;
  unsigned f3 : 21;
} g_994;

int main()
{
  struct f aq1 = {};
    {
      struct f aq = {9, 5};
      struct f as = aq;
      for (int y = 0 ; y <= 4; y += 1)
	if (as.au)
	  {
	    struct f aa[5] = {{2, 154}, {2, 154}, {2, 154}, {2, 154}, {2, 154}};
	    as = aa[0];
	  }
      aq1 = as;
    }
  if (aq1.f3 != 0x9a)
    __builtin_abort();
  return 0;
}