// PR target/45843 // { dg-do run } #include extern "C" void abort (); struct S { struct T { } a[14]; char b; }; struct S arg, s; void foo (int z, ...) { char c; va_list ap; va_start (ap, z); c = 'a'; arg = va_arg (ap, struct S); if (c != 'a') abort (); va_end (ap); } int main () { foo (1, s); return 0; }