1struct g{};
2char y[3];
3char *f = &y[0];
4char *ff = &y[0];
5void h(void)
6{
7  struct g t;
8  *((struct g*)(f++)) = *((struct g*)(ff++));
9  *((struct g*)(f++)) = (struct g){};
10  t = *((struct g*)(ff++));
11}
12
13void abort (void);
14
15int main(void)
16{
17  h();
18  if (f != &y[2])
19    abort();
20  if (ff != &y[2])
21    abort();
22  return 0;
23}
24