1 /* { dg-do compile } */
2 /* { dg-require-effective-target ia32 } */
3 /* { dg-options "-O2 -std=gnu89" } */
4 
5 typedef __builtin_va_list __va_list;
6 typedef __va_list __gnuc_va_list;
7 typedef __gnuc_va_list va_list;
8 struct MSVCRT__iobuf { };
9 typedef struct MSVCRT__iobuf MSVCRT_FILE;
10 typedef union _printf_arg { } printf_arg;
11 MSVCRT_FILE MSVCRT__iob[20];
12 int pf_print_a (va_list *);
13 int __attribute__((__cdecl__))
MSVCRT_vfprintf_s(MSVCRT_FILE * file,const char * format,va_list valist)14 MSVCRT_vfprintf_s(MSVCRT_FILE* file, const char *format, va_list valist)
15 {
16   if(!((file != ((void *)0))
17        || (MSVCRT__invalid_parameter(((void *)0), ((void *)0),
18 				     ((void *)0), 0, 0),0)))
19       return -1;
20   return pf_printf_a(&valist);
21 }
22 int __attribute__((__cdecl__))
MSVCRT_vprintf_s(const char * format,va_list valist)23 MSVCRT_vprintf_s(const char *format, va_list valist)
24 {
25   return MSVCRT_vfprintf_s((MSVCRT__iob+1),format,valist);
26 }
27 int __attribute__((__cdecl__))
MSVCRT_fprintf_s(MSVCRT_FILE * file,const char * format,...)28 MSVCRT_fprintf_s(MSVCRT_FILE* file, const char *format, ...)
29 {
30   va_list valist;
31   va_start (valist, format);
32   return MSVCRT_vfprintf_s(file, format, valist);
33 }
34