1 /* { dg-options "-Wno-psabi" } */
2 void abort (void);
3 
4 struct S2848
5 {
6   unsigned int a;
7   _Complex int b;
8   struct
9   {
10   } __attribute__ ((aligned)) c;
11 };
12 
13 struct S2848 s2848;
14 
15 int fails;
16 
17 void  __attribute__((noinline))
check2848va(int z,...)18 check2848va (int z, ...)
19 {
20   struct S2848 arg;
21   __builtin_va_list ap;
22 
23   __builtin_va_start (ap, z);
24 
25   arg = __builtin_va_arg (ap, struct S2848);
26 
27   if (s2848.a != arg.a)
28     ++fails;
29   if (s2848.b != arg.b)
30     ++fails;
31 
32   __builtin_va_end (ap);
33 }
34 
main(void)35 int main (void)
36 {
37   s2848.a = 4027477739U;
38   s2848.b = (723419448 + -218144346 * __extension__ 1i);
39 
40   check2848va (1, s2848);
41 
42   if (fails)
43     abort ();
44 
45   return 0;
46 }
47 
48