aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/torture/pr69452.c
blob: 8bd931dd45727e98a0b642063273a2e0595b742c (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
34
35
/* { dg-do compile } */

short a, f, h;
struct S0 {
    int f0;
} b;
char c, d, e, j, k;
int g;
char fn1(char p1, int p2) { return 7 >> p2 ? p1 : p2; }
void fn2() {
    int l, m, n;
    struct S0 o = {0};
    for (;;) {
	int p = 1, r = e;
	unsigned q = 6;
	l = r == 0 ? q : q % r;
	n = l;
	c = f;
	k = fn1(p, n ^ e);
	char s = k;
	j = s / 6;
	if (j) {
	    int t = d, u = m = d ? t : t / d;
	    h = a || u;
	    b.f0 = h;
	    for (; d;)
	      ;
	} else {
	    b = o;
	    if (d != g)
	      for (;;)
		;
	}
    }
}