1 /* { dg-do compile } */
2 
3 int b, c;
4 long d, f;
fn1()5 void fn1()
6 {
7   char g;
8   long long h = 0;
9   int *i;
10   if (0) {
11 L2:
12       b && (b = f);
13       d = 3;
14       for (; d;) {
15 	  char *j = &g;
16 	  c = *j = 0;
17 L3:
18 	  *j %= b;
19 	  for (; g <= 4;)
20 	    ;
21       }
22       goto L2;
23   }
24   for (; *i; *i = 1) {
25       if ((h -= 4) == (h != (b ?: d))) {
26 	  g = 3;
27 	  goto L3;
28       }
29       i = (int *)&h;
30       *i = f;
31       i = (int *)&f;
32       if ((h && 6) - (h = 0))
33 	goto L2;
34   }
35   for (; d;)
36     goto L3;
37 }
38