aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/pr51990.c
blob: c7d1b53798557b7911fe91edca117a98d25cb8aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* { dg-do compile } */
/* { dg-options "-O2" } */

int
zzz (char *s1, char *s2, int len, int *q)
{
  int z = 5;
  unsigned int i, b;
  struct s { char a[z]; };
  struct s x;

  extern int foo (int, ...) __attribute__((pure));

  for (i = 0; i < len; i++)
    s1[i] = s2[i];

  b = z & 0x3;

  len += (b == 0 ? 0 : 1) + z;

  *q = len;
  return foo (z, x, x);
}