1 /* { dg-additional-options "-Wl,-u,_printf_float" { target newlib_nano_io } } */
2
3 #include <stdio.h>
4 #include <stdarg.h>
5
6 char buf[50];
7 int
va(int a,double b,int c,...)8 va (int a, double b, int c, ...)
9 {
10 va_list ap;
11 int d, e, f, g, h, i, j, k, l, m, n, o, p;
12 va_start (ap, c);
13
14 d = va_arg (ap, int);
15 e = va_arg (ap, int);
16 f = va_arg (ap, int);
17 g = va_arg (ap, int);
18 h = va_arg (ap, int);
19 i = va_arg (ap, int);
20 j = va_arg (ap, int);
21 k = va_arg (ap, int);
22 l = va_arg (ap, int);
23 m = va_arg (ap, int);
24 n = va_arg (ap, int);
25 o = va_arg (ap, int);
26 p = va_arg (ap, int);
27
28 sprintf (buf,
29 "%d,%f,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",
30 a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p);
31 va_end (ap);
32 }
33
main()34 main()
35 {
36 va (1, 1.0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
37 if (strcmp ("1,1.000000,2,3,4,5,6,7,8,9,10,11,12,13,14,15", buf))
38 abort();
39 exit(0);
40 }
41