1 /* { dg-do compile } */
2 
3 unsigned a, b, c;
4 
f(void)5 void f(void)
6 {
7   for(; a; a++)
8     {
9       long *p1 = (long *)&b;
10 
11       if(*p1)
12 	return;
13 
14       if(b && (*p1 = b) || c && ++*p1)
15 	{
16 	  unsigned *p2 = &b;
17 
18 	  for(*p2 = 0; *p2 < 1;)
19 	    for(; b; b++);
20 	}
21     }
22 }
23