/* { dg-do compile } */ | |
/* { dg-require-profiling "-fprofile-generate" } */ | |
/* { dg-options "-O2 -fprofile-generate" } */ | |
struct S | |
{ | |
int a; | |
void **b; | |
}; | |
void | |
foo (struct S *x, int y) | |
{ | |
if (!x) | |
return; | |
if (y >= x->a) | |
return; | |
x->a--; | |
for (; y < x->a; y++) | |
x->b[y] = x->b[y + 1]; | |
x->b[x->a] = (void *) 0; | |
} |