modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/va-arg-16.c (about) 1 #include <stdarg.h> 2 3 typedef double TYPE; 4 5 void vafunction (TYPE dummy1, TYPE dummy2, ...) 6 { 7 va_list ap; 8 9 va_start(ap, dummy2); 10 if (dummy1 != 888.) 11 abort(); 12 if (dummy2 != 999.) 13 abort(); 14 if (va_arg (ap, TYPE) != 1.) 15 abort(); 16 if (va_arg (ap, TYPE) != 2.) 17 abort(); 18 if (va_arg (ap, TYPE) != 3.) 19 abort(); 20 if (va_arg (ap, TYPE) != 4.) 21 abort(); 22 if (va_arg (ap, TYPE) != 5.) 23 abort(); 24 if (va_arg (ap, TYPE) != 6.) 25 abort(); 26 if (va_arg (ap, TYPE) != 7.) 27 abort(); 28 if (va_arg (ap, TYPE) != 8.) 29 abort(); 30 if (va_arg (ap, TYPE) != 9.) 31 abort(); 32 va_end(ap); 33 } 34 35 36 int main (void) 37 { 38 vafunction( 888., 999., 1., 2., 3., 4., 5., 6., 7., 8., 9. ); 39 exit(0); 40 return 0; 41 }