1 /* { dg-skip-if "requires alloca" { ! alloca } { "-O0" } { "" } } */
2 void
bar(int N)3 bar (int N)
4 {
5   void foo (int a[2][N++]) {}
6   int a[2][N];
7   foo (a);
8   int b[2][N];
9   foo (b);
10   if (sizeof (a) != sizeof (int) * 2 * 1)
11     abort ();
12   if (sizeof (b) != sizeof (int) * 2 * 2)
13     abort ();
14   if (N != 3)
15     abort ();
16 }
17 
18 int
main(void)19 main (void)
20 {
21   bar (1);
22   exit (0);
23 }
24