1 /* { dg-do compile } */ 2 /* { dg-options "-O2" } */ 3 4 int zzz(char * s1,char * s2,int len,int * q)5zzz (char *s1, char *s2, int len, int *q) 6 { 7 int z = 5; 8 unsigned int i, b; 9 struct s { char a[z]; }; 10 struct s x; 11 12 extern int foo (int, ...) __attribute__((pure)); 13 14 for (i = 0; i < len; i++) 15 s1[i] = s2[i]; 16 17 b = z & 0x3; 18 19 len += (b == 0 ? 0 : 1) + z; 20 21 *q = len; 22 return foo (z, x, x); 23 } 24