1// PR target/45843
2// { dg-do run }
3
4#include <stdarg.h>
5
6extern "C" void abort ();
7struct S { struct T { } a[14]; char b; };
8struct S arg, s;
9
10void
11foo (int z, ...)
12{
13  char c;
14  va_list ap;
15  va_start (ap, z);
16  c = 'a';
17  arg = va_arg (ap, struct S);
18  if (c != 'a')
19    abort ();
20  va_end (ap);
21}
22
23int
24main ()
25{
26  foo (1, s);
27  return 0;
28}
29