1 /* { dg-require-effective-target int32plus } */
2 /* { dg-require-effective-target alloca } */
3 
4 /* Ensure that we deallocate X when branching back before its
5    declaration.  */
6 
7 void *volatile p;
8 
9 int
main(void)10 main (void)
11 {
12   int n = 0;
13  lab:;
14   int x[n % 1000 + 1];
15   x[0] = 1;
16   x[n % 1000] = 2;
17   p = x;
18   n++;
19   if (n < 1000000)
20     goto lab;
21   return 0;
22 }
23