1 /* { dg-do compile } */
2 /* { dg-options "-w" } */
3 
4 static unsigned short
foo(unsigned short ui1,unsigned short ui2)5 foo (unsigned short ui1, unsigned short ui2)
6 {
7   return ui1 - ui2;
8 }
9 
10 static unsigned short
bar(unsigned ui1,unsigned short ui2)11 bar (unsigned ui1, unsigned short ui2)
12 {
13   return ui1 + ui2;
14 }
15 
16 struct S1
17 {
18   const short f3;
19 };
20 int g_31;
21 short g_67;
22 struct S1 g_68[2][5][9][1][1] = {
23 };
24 
25 int func_90 (int);
26 
int329(int * const * const int32p_81,short ** p_82)27 int int329 (int * const *const int32p_81, short ** p_82)
28 {
29   short l_169[8];
30   for (g_31 = 0; g_31 <= 0; g_31 = foo (g_31, 1))
31     {
32       short l_85;
33 lbl_89:g_67 ^= l_85;
34        for (l_85 = 0; l_85 >= 0; l_85 = bar)
35 	 if (g_31)
36 	   goto lbl_89;
37        func_90 (1), g_68[0][2][2][0][0].f3, 0;
38     }
39   return l_169[6];
40 }
41 
42