OSDN Git Service

Merge lto branch into trunk.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / va-arg-15.c
1 #include <stdarg.h>
2
3 void vafunction (char *dummy, ...)
4 {
5   double darg;
6   int iarg;
7   int flag = 0;
8   int i;
9   va_list ap;
10
11   va_start(ap, dummy);
12   for (i = 1; i <= 18; i++, flag++) 
13     {
14       if (flag & 1)
15         {
16           darg = va_arg (ap, double);   
17           if (darg != (double)i)
18             abort();
19         }
20       else
21         {
22           iarg = va_arg (ap, int);
23           if (iarg != i)
24             abort();
25         }
26     }
27     va_end(ap);
28 }
29
30 int main (void)
31 {
32   vafunction( "", 
33         1, 2., 
34         3, 4., 
35         5, 6., 
36         7, 8., 
37         9, 10.,
38         11, 12.,
39         13, 14.,
40         15, 16.,
41         17, 18. );
42   exit(0);
43   return 0;
44 }