1 #include <stdarg.h>
2 
3 struct tiny
4 {
5   int c;
6 };
7 
f(int n,...)8 f (int n, ...)
9 {
10   struct tiny x;
11   int i;
12 
13   va_list ap;
14   va_start (ap,n);
15   for (i = 0; i < n; i++)
16     {
17       x = va_arg (ap,struct tiny);
18       if (x.c != i + 10)
19 	abort();
20     }
21   {
22     long x = va_arg (ap, long);
23     if (x != 123)
24       abort();
25   }
26   va_end (ap);
27 }
28 
main()29 main ()
30 {
31   struct tiny x[3];
32   x[0].c = 10;
33   x[1].c = 11;
34   x[2].c = 12;
35   f (3, x[0], x[1], x[2], (long) 123);
36   exit(0);
37 }
38 
39