summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr84670-2.c
blob: 80fb3685491f07217f9d8af69ee1023518a07e4f (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
27
28
29
30
31
32
33
/* { dg-do compile } */
/* { dg-options "-Ofast" } */

enum b
{
  c,
  d
};
struct e
{
  enum b code;
};
struct f
{
  unsigned g;
};
int h, i;
struct a
{
  struct e common;
  struct f j;
};

struct a k (void)
{
  struct a *l;
  do
    if (l->common.code == d && l->j.g * 4)
      ;
    else
      i = l->j.g | (l->common.code && l);
  while (h && l->common.code == c);
}