aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conform/data/stdio.h-data2
-rw-r--r--conform/data/wchar.h-data12
-rw-r--r--include/err.h6
-rw-r--r--include/stdio.h30
-rw-r--r--include/syslog.h2
-rw-r--r--include/wchar.h12
-rw-r--r--libio/bits/stdio.h2
-rw-r--r--libio/bits/stdio2.h28
-rw-r--r--libio/iolibio.h2
-rw-r--r--libio/libio.h4
-rw-r--r--libio/stdio.h33
-rw-r--r--libio/vwprintf.c2
-rw-r--r--misc/bits/syslog.h4
-rw-r--r--misc/err.c12
-rw-r--r--misc/err.h8
-rw-r--r--misc/syslog.h2
-rwxr-xr-xscripts/check-obsolete-constructs.py1
-rw-r--r--stdio-common/printf.h2
-rw-r--r--stdlib/bits/NULL.h49
-rw-r--r--stdlib/bits/types/__va_list.h48
-rw-r--r--stdlib/bits/types/ptrdiff_t.h48
-rw-r--r--stdlib/bits/types/size_t.h48
-rw-r--r--stdlib/bits/types/va_list.h31
-rw-r--r--stdlib/bits/types/wchar_t.h53
-rw-r--r--sysdeps/ieee754/ldbl-opt/nldbl-compat.c8
-rw-r--r--sysdeps/ieee754/ldbl-opt/nldbl-compat.h16
-rw-r--r--wcsmbs/bits/wchar2.h14
-rw-r--r--wcsmbs/wchar.h24
28 files changed, 354 insertions, 149 deletions
diff --git a/conform/data/stdio.h-data b/conform/data/stdio.h-data
index 3ef2460..60ebea4 100644
--- a/conform/data/stdio.h-data
+++ b/conform/data/stdio.h-data
@@ -41,7 +41,7 @@ type fpos_t
#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined POSIX
type va_list
#else
-#define va_list __gnuc_va_list
+#define va_list __va_list
#endif
type size_t
#if defined XOPEN2K8 || defined POSIX2008
diff --git a/conform/data/wchar.h-data b/conform/data/wchar.h-data
index e414651..424c59c 100644
--- a/conform/data/wchar.h-data
+++ b/conform/data/wchar.h-data
@@ -59,17 +59,17 @@ function wint_t towlower (wint_t)
function wint_t towupper (wint_t)
# endif
function wint_t ungetwc (wint_t, FILE*)
-function int vfwprintf (FILE*, const wchar_t*, __gnuc_va_list)
+function int vfwprintf (FILE*, const wchar_t*, __va_list)
# ifndef UNIX98
-function int vfwscanf (FILE*, const wchar_t*, __gnuc_va_list)
+function int vfwscanf (FILE*, const wchar_t*, __va_list)
# endif
-function int vwprintf (const wchar_t*, __gnuc_va_list)
+function int vwprintf (const wchar_t*, __va_list)
# ifndef UNIX98
-function int vwscanf (const wchar_t*, __gnuc_va_list)
+function int vwscanf (const wchar_t*, __va_list)
# endif
-function int vswprintf (wchar_t*, size_t, const wchar_t*, __gnuc_va_list)
+function int vswprintf (wchar_t*, size_t, const wchar_t*, __va_list)
# ifndef UNIX98
-function int vswscanf (const wchar_t*, const wchar_t*, __gnuc_va_list)
+function int vswscanf (const wchar_t*, const wchar_t*, __va_list)
# endif
# if defined XOPEN2K8 || defined POSIX2008
function {wchar_t*} wcpcpy (wchar_t*, const wchar_t*)
diff --git a/include/err.h b/include/err.h
index 7c05cd1..573a0f8 100644
--- a/include/err.h
+++ b/include/err.h
@@ -3,12 +3,10 @@
/* Prototypes for internal err.h functions. */
void
-__vwarnx_internal (const char *format, __gnuc_va_list ap,
- unsigned int mode_flags);
+__vwarnx_internal (const char *format, __va_list ap, unsigned int mode_flags);
void
-__vwarn_internal (const char *format, __gnuc_va_list ap,
- unsigned int mode_flags);
+__vwarn_internal (const char *format, __va_list ap, unsigned int mode_flags);
# ifndef _ISOMAC
diff --git a/include/stdio.h b/include/stdio.h
index 5cd38ea..f60fa28 100644
--- a/include/stdio.h
+++ b/include/stdio.h
@@ -18,40 +18,39 @@ libc_hidden_proto (__snprintf)
# endif
extern int __vfscanf (FILE *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__attribute__ ((__format__ (__scanf__, 2, 0)));
libc_hidden_proto (__vfscanf)
-extern int __vscanf (const char *__restrict __format,
- __gnuc_va_list __arg)
+extern int __vscanf (const char *__restrict __format, __va_list __arg)
__attribute__ ((__format__ (__scanf__, 1, 0)));
extern __ssize_t __getline (char **__lineptr, size_t *__n,
FILE *__stream) attribute_hidden;
extern int __vsscanf (const char *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__attribute__ ((__format__ (__scanf__, 2, 0)));
extern int __sprintf_chk (char *, int, size_t, const char *, ...) __THROW;
extern int __snprintf_chk (char *, size_t, int, size_t, const char *, ...)
__THROW;
extern int __vsprintf_chk (char *, int, size_t, const char *,
- __gnuc_va_list) __THROW;
+ __va_list) __THROW;
extern int __vsnprintf_chk (char *, size_t, int, size_t, const char *,
- __gnuc_va_list) __THROW;
+ __va_list) __THROW;
extern int __printf_chk (int, const char *, ...);
extern int __fprintf_chk (FILE *, int, const char *, ...);
-extern int __vprintf_chk (int, const char *, __gnuc_va_list);
-extern int __vfprintf_chk (FILE *, int, const char *, __gnuc_va_list);
+extern int __vprintf_chk (int, const char *, __va_list);
+extern int __vfprintf_chk (FILE *, int, const char *, __va_list);
extern char *__fgets_unlocked_chk (char *buf, size_t size, int n, FILE *fp);
extern char *__fgets_chk (char *buf, size_t size, int n, FILE *fp);
extern int __asprintf_chk (char **, int, const char *, ...) __THROW;
-extern int __vasprintf_chk (char **, int, const char *, __gnuc_va_list) __THROW;
+extern int __vasprintf_chk (char **, int, const char *, __va_list) __THROW;
extern int __dprintf_chk (int, int, const char *, ...);
-extern int __vdprintf_chk (int, int, const char *, __gnuc_va_list);
+extern int __vdprintf_chk (int, int, const char *, __va_list);
extern int __obstack_printf_chk (struct obstack *, int, const char *, ...)
__THROW;
extern int __obstack_vprintf_chk (struct obstack *, int, const char *,
- __gnuc_va_list) __THROW;
+ __va_list) __THROW;
extern int __isoc99_fscanf (FILE *__restrict __stream,
const char *__restrict __format, ...) __wur;
@@ -60,12 +59,12 @@ extern int __isoc99_sscanf (const char *__restrict __s,
const char *__restrict __format, ...) __THROW;
extern int __isoc99_vfscanf (FILE *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg) __wur;
+ __va_list __arg) __wur;
extern int __isoc99_vscanf (const char *__restrict __format,
- __gnuc_va_list __arg) __wur;
+ __va_list __arg) __wur;
extern int __isoc99_vsscanf (const char *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg) __THROW;
+ __va_list __arg) __THROW;
libc_hidden_proto (__isoc99_sscanf)
libc_hidden_proto (__isoc99_vsscanf)
libc_hidden_proto (__isoc99_vfscanf)
@@ -131,8 +130,7 @@ extern int __fxprintf (FILE *__fp, const char *__fmt, ...)
__attribute__ ((__format__ (__printf__, 2, 3))) attribute_hidden;
extern int __fxprintf_nocancel (FILE *__fp, const char *__fmt, ...)
__attribute__ ((__format__ (__printf__, 2, 3))) attribute_hidden;
-int __vfxprintf (FILE *__fp, const char *__fmt, __gnuc_va_list,
- unsigned int)
+int __vfxprintf (FILE *__fp, const char *__fmt, __va_list, unsigned int)
attribute_hidden;
/* Read the next line from FP into BUFFER, of LENGTH bytes. LINE will
diff --git a/include/syslog.h b/include/syslog.h
index 5dc6e76..cd8b6b8 100644
--- a/include/syslog.h
+++ b/include/syslog.h
@@ -6,7 +6,7 @@ libc_hidden_proto (syslog)
/* __vsyslog_internal uses the same mode_flags bits as
__v*printf_internal; see libio/libioP.h. */
-extern void __vsyslog_internal (int pri, const char *fmt, __gnuc_va_list ap,
+extern void __vsyslog_internal (int pri, const char *fmt, __va_list ap,
unsigned int mode_flags)
attribute_hidden
__attribute__ ((__format__ (__printf__, 2, 0)));
diff --git a/include/wchar.h b/include/wchar.h
index c792b38..da802eb 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -204,7 +204,7 @@ extern wchar_t *__wmemset_chk (wchar_t *__s, wchar_t __c, size_t __n,
extern int __vfwscanf (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
attribute_hidden
/* __attribute__ ((__format__ (__wscanf__, 2, 0)) */;
extern int __fwprintf (__FILE *__restrict __s,
@@ -213,12 +213,12 @@ extern int __fwprintf (__FILE *__restrict __s,
/* __attribute__ ((__format__ (__wprintf__, 2, 3))) */;
extern int __vfwprintf_chk (FILE *__restrict __s, int __flag,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
extern int __vswprintf_chk (wchar_t *__restrict __s, size_t __n,
int __flag, size_t __s_len,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wprintf__, 5, 0))) */;
extern int __isoc99_fwscanf (__FILE *__restrict __stream,
@@ -229,12 +229,12 @@ extern int __isoc99_swscanf (const wchar_t *__restrict __s,
__THROW;
extern int __isoc99_vfwscanf (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg);
+ __va_list __arg);
extern int __isoc99_vwscanf (const wchar_t *__restrict __format,
- __gnuc_va_list __arg);
+ __va_list __arg);
extern int __isoc99_vswscanf (const wchar_t *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg) __THROW;
+ __va_list __arg) __THROW;
libc_hidden_proto (__isoc99_vswscanf)
libc_hidden_proto (__isoc99_vfwscanf)
diff --git a/libio/bits/stdio.h b/libio/bits/stdio.h
index da62908..eaa7857 100644
--- a/libio/bits/stdio.h
+++ b/libio/bits/stdio.h
@@ -36,7 +36,7 @@
# if !(__USE_FORTIFY_LEVEL > 0 && defined __fortify_function)
/* Write formatted output to stdout from argument list ARG. */
__STDIO_INLINE int
-vprintf (const char *__restrict __fmt, __gnuc_va_list __arg)
+vprintf (const char *__restrict __fmt, __va_list __arg)
{
return vfprintf (stdout, __fmt, __arg);
}
diff --git a/libio/bits/stdio2.h b/libio/bits/stdio2.h
index 60bc817..03fcf11 100644
--- a/libio/bits/stdio2.h
+++ b/libio/bits/stdio2.h
@@ -27,7 +27,7 @@ extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
const char *__restrict __format, ...) __THROW;
extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
const char *__restrict __format,
- __gnuc_va_list __ap) __THROW;
+ __va_list __ap) __THROW;
#ifdef __va_arg_pack
__fortify_function int
@@ -44,7 +44,7 @@ __NTH (sprintf (char *__restrict __s, const char *__restrict __fmt, ...))
__fortify_function int
__NTH (vsprintf (char *__restrict __s, const char *__restrict __fmt,
- __gnuc_va_list __ap))
+ __va_list __ap))
{
return __builtin___vsprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
__bos (__s), __fmt, __ap);
@@ -57,7 +57,7 @@ extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
...) __THROW;
extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
size_t __slen, const char *__restrict __format,
- __gnuc_va_list __ap) __THROW;
+ __va_list __ap) __THROW;
# ifdef __va_arg_pack
__fortify_function int
@@ -75,7 +75,7 @@ __NTH (snprintf (char *__restrict __s, size_t __n,
__fortify_function int
__NTH (vsnprintf (char *__restrict __s, size_t __n,
- const char *__restrict __fmt, __gnuc_va_list __ap))
+ const char *__restrict __fmt, __va_list __ap))
{
return __builtin___vsnprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
__bos (__s), __fmt, __ap);
@@ -89,9 +89,9 @@ extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
const char *__restrict __format, ...);
extern int __printf_chk (int __flag, const char *__restrict __format, ...);
extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
- const char *__restrict __format, __gnuc_va_list __ap);
+ const char *__restrict __format, __va_list __ap);
extern int __vprintf_chk (int __flag, const char *__restrict __format,
- __gnuc_va_list __ap);
+ __va_list __ap);
# ifdef __va_arg_pack
__fortify_function int
@@ -114,7 +114,7 @@ printf (const char *__restrict __fmt, ...)
# endif
__fortify_function int
-vprintf (const char *__restrict __fmt, __gnuc_va_list __ap)
+vprintf (const char *__restrict __fmt, __va_list __ap)
{
#ifdef __USE_EXTERN_INLINES
return __vfprintf_chk (stdout, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
@@ -125,7 +125,7 @@ vprintf (const char *__restrict __fmt, __gnuc_va_list __ap)
__fortify_function int
vfprintf (FILE *__restrict __stream,
- const char *__restrict __fmt, __gnuc_va_list __ap)
+ const char *__restrict __fmt, __va_list __ap)
{
return __vfprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
@@ -134,7 +134,7 @@ vfprintf (FILE *__restrict __stream,
extern int __dprintf_chk (int __fd, int __flag, const char *__restrict __fmt,
...) __attribute__ ((__format__ (__printf__, 3, 4)));
extern int __vdprintf_chk (int __fd, int __flag,
- const char *__restrict __fmt, __gnuc_va_list __arg)
+ const char *__restrict __fmt, __va_list __arg)
__attribute__ ((__format__ (__printf__, 3, 0)));
# ifdef __va_arg_pack
@@ -150,7 +150,7 @@ dprintf (int __fd, const char *__restrict __fmt, ...)
# endif
__fortify_function int
-vdprintf (int __fd, const char *__restrict __fmt, __gnuc_va_list __ap)
+vdprintf (int __fd, const char *__restrict __fmt, __va_list __ap)
{
return __vdprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
@@ -162,7 +162,7 @@ extern int __asprintf_chk (char **__restrict __ptr, int __flag,
const char *__restrict __fmt, ...)
__THROW __attribute__ ((__format__ (__printf__, 3, 4))) __wur;
extern int __vasprintf_chk (char **__restrict __ptr, int __flag,
- const char *__restrict __fmt, __gnuc_va_list __arg)
+ const char *__restrict __fmt, __va_list __arg)
__THROW __attribute__ ((__format__ (__printf__, 3, 0))) __wur;
extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
int __flag, const char *__restrict __format,
@@ -171,7 +171,7 @@ extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
extern int __obstack_vprintf_chk (struct obstack *__restrict __obstack,
int __flag,
const char *__restrict __format,
- __gnuc_va_list __args)
+ __va_list __args)
__THROW __attribute__ ((__format__ (__printf__, 3, 0)));
# ifdef __va_arg_pack
@@ -208,14 +208,14 @@ __NTH (obstack_printf (struct obstack *__restrict __obstack,
__fortify_function int
__NTH (vasprintf (char **__restrict __ptr, const char *__restrict __fmt,
- __gnuc_va_list __ap))
+ __va_list __ap))
{
return __vasprintf_chk (__ptr, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
__fortify_function int
__NTH (obstack_vprintf (struct obstack *__restrict __obstack,
- const char *__restrict __fmt, __gnuc_va_list __ap))
+ const char *__restrict __fmt, __va_list __ap))
{
return __obstack_vprintf_chk (__obstack, __USE_FORTIFY_LEVEL - 1, __fmt,
__ap);
diff --git a/libio/iolibio.h b/libio/iolibio.h
index 9561833..d956c01 100644
--- a/libio/iolibio.h
+++ b/libio/iolibio.h
@@ -50,7 +50,7 @@ libc_hidden_proto (_IO_setvbuf)
extern int _IO_sscanf (const char*, const char*, ...) __THROW;
extern int _IO_sprintf (char *, const char*, ...) __THROW;
extern int _IO_ungetc (int, FILE*) __THROW;
-extern int _IO_vsscanf (const char *, const char *, __gnuc_va_list) __THROW;
+extern int _IO_vsscanf (const char *, const char *, __va_list) __THROW;
#define _IO_clearerr(FP) ((FP)->_flags &= ~(_IO_ERR_SEEN|_IO_EOF_SEEN))
#define _IO_fseek(__fp, __offset, __whence) \
diff --git a/libio/libio.h b/libio/libio.h
index 37bc8f2..263a8cc 100644
--- a/libio/libio.h
+++ b/libio/libio.h
@@ -212,7 +212,7 @@ extern int _IO_ftrylockfile (FILE *) __THROW;
(((_fp)->_flags2 & _IO_FLAGS2_NEED_LOCK) != 0)
extern int _IO_vfscanf (FILE * __restrict, const char * __restrict,
- __gnuc_va_list, int *__restrict);
+ __va_list, int *__restrict);
extern __ssize_t _IO_padn (FILE *, int, __ssize_t);
extern size_t _IO_sgetn (FILE *, void *, size_t);
@@ -253,7 +253,7 @@ weak_extern (_IO_stdin_used);
__result; })
extern int _IO_vfwscanf (FILE * __restrict, const wchar_t * __restrict,
- __gnuc_va_list, int *__restrict);
+ __va_list, int *__restrict);
extern __ssize_t _IO_wpadn (FILE *, wint_t, __ssize_t);
extern void _IO_free_wbackup_area (FILE *) __THROW;
diff --git a/libio/stdio.h b/libio/stdio.h
index 1a2cd40..eebb579 100644
--- a/libio/stdio.h
+++ b/libio/stdio.h
@@ -317,15 +317,15 @@ extern int sprintf (char *__restrict __s,
This function is a possible cancellation point and therefore not
marked with __THROW. */
extern int vfprintf (FILE *__restrict __s, const char *__restrict __format,
- __gnuc_va_list __arg);
+ __va_list __arg);
/* Write formatted output to stdout from argument list ARG.
This function is a possible cancellation point and therefore not
marked with __THROW. */
-extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg);
+extern int vprintf (const char *__restrict __format, __va_list __arg);
/* Write formatted output to S from argument list ARG. */
extern int vsprintf (char *__restrict __s, const char *__restrict __format,
- __gnuc_va_list __arg) __THROWNL;
+ __va_list __arg) __THROWNL;
#if defined __USE_ISOC99 || defined __USE_UNIX98
/* Maximum chars of output to write in MAXLEN. */
@@ -334,7 +334,7 @@ extern int snprintf (char *__restrict __s, size_t __maxlen,
__THROWNL __attribute__ ((__format__ (__printf__, 3, 4)));
extern int vsnprintf (char *__restrict __s, size_t __maxlen,
- const char *__restrict __format, __gnuc_va_list __arg)
+ const char *__restrict __format, __va_list __arg)
__THROWNL __attribute__ ((__format__ (__printf__, 3, 0)));
#endif
@@ -342,7 +342,7 @@ extern int vsnprintf (char *__restrict __s, size_t __maxlen,
/* Write formatted output to a string dynamically allocated with `malloc'.
Store the address of the string in *PTR. */
extern int vasprintf (char **__restrict __ptr, const char *__restrict __f,
- __gnuc_va_list __arg)
+ __va_list __arg)
__THROWNL __attribute__ ((__format__ (__printf__, 2, 0))) __wur;
extern int __asprintf (char **__restrict __ptr,
const char *__restrict __fmt, ...)
@@ -354,8 +354,7 @@ extern int asprintf (char **__restrict __ptr,
#ifdef __USE_XOPEN2K8
/* Write formatted output to a file descriptor. */
-extern int vdprintf (int __fd, const char *__restrict __fmt,
- __gnuc_va_list __arg)
+extern int vdprintf (int __fd, const char *__restrict __fmt, __va_list __arg)
__attribute__ ((__format__ (__printf__, 2, 0)));
extern int dprintf (int __fd, const char *__restrict __fmt, ...)
__attribute__ ((__format__ (__printf__, 2, 3)));
@@ -408,19 +407,19 @@ extern int __isoc99_sscanf (const char *__restrict __s,
This function is a possible cancellation point and therefore not
marked with __THROW. */
extern int vfscanf (FILE *__restrict __s, const char *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__attribute__ ((__format__ (__scanf__, 2, 0))) __wur;
/* Read formatted input from stdin into argument list ARG.
This function is a possible cancellation point and therefore not
marked with __THROW. */
-extern int vscanf (const char *__restrict __format, __gnuc_va_list __arg)
+extern int vscanf (const char *__restrict __format, __va_list __arg)
__attribute__ ((__format__ (__scanf__, 1, 0))) __wur;
/* Read formatted input from S into argument list ARG. */
extern int vsscanf (const char *__restrict __s,
- const char *__restrict __format, __gnuc_va_list __arg)
+ const char *__restrict __format, __va_list __arg)
__THROW __attribute__ ((__format__ (__scanf__, 2, 0)));
/* Same redirection as above for the v*scanf family. */
@@ -428,26 +427,26 @@ extern int vsscanf (const char *__restrict __s,
# if defined __REDIRECT && !defined __LDBL_COMPAT
extern int __REDIRECT (vfscanf,
(FILE *__restrict __s,
- const char *__restrict __format, __gnuc_va_list __arg),
+ const char *__restrict __format, __va_list __arg),
__isoc99_vfscanf)
__attribute__ ((__format__ (__scanf__, 2, 0))) __wur;
extern int __REDIRECT (vscanf, (const char *__restrict __format,
- __gnuc_va_list __arg), __isoc99_vscanf)
+ __va_list __arg), __isoc99_vscanf)
__attribute__ ((__format__ (__scanf__, 1, 0))) __wur;
extern int __REDIRECT_NTH (vsscanf,
(const char *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg), __isoc99_vsscanf)
+ __va_list __arg), __isoc99_vsscanf)
__attribute__ ((__format__ (__scanf__, 2, 0)));
# elif !defined __REDIRECT
extern int __isoc99_vfscanf (FILE *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg) __wur;
+ __va_list __arg) __wur;
extern int __isoc99_vscanf (const char *__restrict __format,
- __gnuc_va_list __arg) __wur;
+ __va_list __arg) __wur;
extern int __isoc99_vsscanf (const char *__restrict __s,
const char *__restrict __format,
- __gnuc_va_list __arg) __THROW;
+ __va_list __arg) __THROW;
# define vfscanf __isoc99_vfscanf
# define vscanf __isoc99_vscanf
# define vsscanf __isoc99_vsscanf
@@ -806,7 +805,7 @@ extern int obstack_printf (struct obstack *__restrict __obstack,
__THROWNL __attribute__ ((__format__ (__printf__, 2, 3)));
extern int obstack_vprintf (struct obstack *__restrict __obstack,
const char *__restrict __format,
- __gnuc_va_list __args)
+ __va_list __args)
__THROWNL __attribute__ ((__format__ (__printf__, 2, 0)));
#endif /* Use GNU. */
diff --git a/libio/vwprintf.c b/libio/vwprintf.c
index aef6d67..df13647 100644
--- a/libio/vwprintf.c
+++ b/libio/vwprintf.c
@@ -23,7 +23,7 @@
/* Write formatted output to stdout according to the
format string FORMAT, using the argument list in ARG. */
int
-__vwprintf (const wchar_t *format, __gnuc_va_list arg)
+__vwprintf (const wchar_t *format, __va_list arg)
{
return __vfwprintf_internal (stdout, format, arg, 0);
}
diff --git a/misc/bits/syslog.h b/misc/bits/syslog.h
index 0f0b628..c15e50a 100644
--- a/misc/bits/syslog.h
+++ b/misc/bits/syslog.h
@@ -41,11 +41,11 @@ syslog (int __pri, const char *__fmt, ...)
#ifdef __USE_MISC
extern void __vsyslog_chk (int __pri, int __flag, const char *__fmt,
- __gnuc_va_list __ap)
+ __va_list __ap)
__attribute__ ((__format__ (__printf__, 3, 0)));
__fortify_function void
-vsyslog (int __pri, const char *__fmt, __gnuc_va_list __ap)
+vsyslog (int __pri, const char *__fmt, __va_list __ap)
{
__vsyslog_chk (__pri, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
diff --git a/misc/err.c b/misc/err.c
index aea734e..9ea433e 100644
--- a/misc/err.c
+++ b/misc/err.c
@@ -38,7 +38,7 @@ extern char *__progname;
}
void
-__vwarnx_internal (const char *format, __gnuc_va_list ap,
+__vwarnx_internal (const char *format, __va_list ap,
unsigned int mode_flags)
{
flockfile (stderr);
@@ -50,7 +50,7 @@ __vwarnx_internal (const char *format, __gnuc_va_list ap,
}
void
-__vwarn_internal (const char *format, __gnuc_va_list ap,
+__vwarn_internal (const char *format, __va_list ap,
unsigned int mode_flags)
{
int error = errno;
@@ -72,14 +72,14 @@ __vwarn_internal (const char *format, __gnuc_va_list ap,
}
void
-vwarn (const char *format, __gnuc_va_list ap)
+vwarn (const char *format, __va_list ap)
{
__vwarn_internal (format, ap, 0);
}
libc_hidden_def (vwarn)
void
-vwarnx (const char *format, __gnuc_va_list ap)
+vwarnx (const char *format, __va_list ap)
{
__vwarnx_internal (format, ap, 0);
}
@@ -100,7 +100,7 @@ warnx (const char *format, ...)
libc_hidden_def (warnx)
void
-verr (int status, const char *format, __gnuc_va_list ap)
+verr (int status, const char *format, __va_list ap)
{
vwarn (format, ap);
exit (status);
@@ -108,7 +108,7 @@ verr (int status, const char *format, __gnuc_va_list ap)
libc_hidden_def (verr)
void
-verrx (int status, const char *format, __gnuc_va_list ap)
+verrx (int status, const char *format, __va_list ap)
{
vwarnx (format, ap);
exit (status);
diff --git a/misc/err.h b/misc/err.h
index 5503c4e..506a9f6 100644
--- a/misc/err.h
+++ b/misc/err.h
@@ -29,23 +29,23 @@ __BEGIN_DECLS
and a newline, on stderr. */
extern void warn (const char *__format, ...)
__attribute__ ((__format__ (__printf__, 1, 2)));
-extern void vwarn (const char *__format, __gnuc_va_list)
+extern void vwarn (const char *__format, __va_list)
__attribute__ ((__format__ (__printf__, 1, 0)));
/* Likewise, but without ": " and the standard error string. */
extern void warnx (const char *__format, ...)
__attribute__ ((__format__ (__printf__, 1, 2)));
-extern void vwarnx (const char *__format, __gnuc_va_list)
+extern void vwarnx (const char *__format, __va_list)
__attribute__ ((__format__ (__printf__, 1, 0)));
/* Likewise, and then exit with STATUS. */
extern void err (int __status, const char *__format, ...)
__attribute__ ((__noreturn__, __format__ (__printf__, 2, 3)));
-extern void verr (int __status, const char *__format, __gnuc_va_list)
+extern void verr (int __status, const char *__format, __va_list)
__attribute__ ((__noreturn__, __format__ (__printf__, 2, 0)));
extern void errx (int __status, const char *__format, ...)
__attribute__ ((__noreturn__, __format__ (__printf__, 2, 3)));
-extern void verrx (int __status, const char *, __gnuc_va_list)
+extern void verrx (int __status, const char *, __va_list)
__attribute__ ((__noreturn__, __format__ (__printf__, 2, 0)));
#ifdef __LDBL_COMPAT
diff --git a/misc/syslog.h b/misc/syslog.h
index f7b7a67..f7a980b 100644
--- a/misc/syslog.h
+++ b/misc/syslog.h
@@ -196,7 +196,7 @@ extern void syslog (int __pri, const char *__fmt, ...)
cancellation point. But due to similarity with an POSIX interface
or due to the implementation it is a cancellation point and
therefore not marked with __THROW. */
-extern void vsyslog (int __pri, const char *__fmt, __gnuc_va_list __ap)
+extern void vsyslog (int __pri, const char *__fmt, __va_list __ap)
__attribute__ ((__format__ (__printf__, 2, 0)));
#endif
diff --git a/scripts/check-obsolete-constructs.py b/scripts/check-obsolete-constructs.py
index 5d4faac..77253df 100755
--- a/scripts/check-obsolete-constructs.py
+++ b/scripts/check-obsolete-constructs.py
@@ -692,7 +692,6 @@ HEADER_ALLOWED_INCLUDES = {
"bits/types/ptrdiff_t.h": [ "stddef.h" ],
"bits/types/size_t.h": [ "stddef.h" ],
"bits/types/wchar_t.h": [ "stddef.h" ],
- "bits/NULL.h": [ "stddef.h" ],
}
# As above, but each group of whitelist entries is only used for
diff --git a/stdio-common/printf.h b/stdio-common/printf.h
index 1ac342d..8e5d751 100644
--- a/stdio-common/printf.h
+++ b/stdio-common/printf.h
@@ -86,7 +86,7 @@ typedef int printf_arginfo_function (const struct printf_info *__info,
/* Type of a function to get a value of a user-defined from the
variable argument list. */
-typedef void printf_va_arg_function (void *__mem, __gnuc_va_list *__ap);
+typedef void printf_va_arg_function (void *__mem, __va_list *__ap);
/* Register FUNC to be called to format SPEC specifiers; ARGINFO must be
diff --git a/stdlib/bits/NULL.h b/stdlib/bits/NULL.h
index 79285bd..96b7556 100644
--- a/stdlib/bits/NULL.h
+++ b/stdlib/bits/NULL.h
@@ -1,8 +1,47 @@
-#ifndef _BITS_NULL_H
-#define _BITS_NULL_H 1
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-/* We rely on the compiler's stddef.h to define NULL for us. */
-#define __need_NULL
-#include <stddef.h>
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* There is no consensus among compilers as to the proper guard macro
+ for having defined NULL specifically ... except NULL itself. */
+#ifndef NULL
+
+/* In C, ((void *)0) is the preferred choice for the expansion of
+ NULL, as it cannot be misinterpreted as an integer zero. */
+#ifndef __cplusplus
+# define NULL ((void *)0)
+
+/* ((void *)0) cannot be used in C++. In C++2011 and later, nullptr
+ is the preferred alternative, but programs are to be encouraged to
+ migrate away from both bare 0 and NULL to nullptr, so we do not
+ define NULL as nullptr. Some compilers support an extension
+ keyword __null that will trigger diagnostics when used in a context
+ that expects an integer, but will also be treated as 0 for purposes
+ of diagnostics encouraging migration to nullptr.
+
+ The complexity of this #if is because clang++ always pretends to be
+ G++ and may also pretend to be one of several different Windows
+ compilers. */
+#elif (defined __GNUG__ || defined __clang__) \
+ && !defined _MSC_VER && !defined __MINGW32__
+# define NULL __null
+
+/* Otherwise a bare 0 will have to do. */
+#else
+# define NULL 0
+#endif
#endif
diff --git a/stdlib/bits/types/__va_list.h b/stdlib/bits/types/__va_list.h
index e3c53c3..ac5ab40 100644
--- a/stdlib/bits/types/__va_list.h
+++ b/stdlib/bits/types/__va_list.h
@@ -1,9 +1,47 @@
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
#ifndef ____va_list_defined
-#define ____va_list_defined 1
-/* We rely on the compiler's stdarg.h to define __gnuc_va_list for us. */
-#define __need___va_list
-#include <stdarg.h>
-#undef __need___va_list
+/* If __builtin_va_list is available, use it. There is no predefined
+ macro advertising the availability of this type. It is known to be
+ available in GCC 3.0 and later. It is also known to be available
+ in all released versions of clang. */
+#if defined __clang__ || (defined __GNUC__ && __GNUC__ >= 3)
+
+typedef __builtin_va_list __va_list;
+#else
+
+/* Depending on the compiler, we may be able to persuade its stdarg.h
+ to define an implementation-namespace alias for va_list and nothing
+ else. If this feature is not available, exposing everything
+ defined by stdarg.h is better than not defining __va_list at all. */
+# define __need___va_list
+# include <stdarg.h>
+# undef __need___va_list
+
+# ifdef __GNUC_VA_LIST
+typedef __gnuc_va_list __va_list;
+# else
+typedef va_list __va_list;
+# endif
+#endif
+
+/* This must not be defined until _after_ possibly including stdarg.h. */
+#define ____va_list_defined 1
#endif
diff --git a/stdlib/bits/types/ptrdiff_t.h b/stdlib/bits/types/ptrdiff_t.h
index 23a8b98..a1cb9d9 100644
--- a/stdlib/bits/types/ptrdiff_t.h
+++ b/stdlib/bits/types/ptrdiff_t.h
@@ -1,9 +1,45 @@
-#ifndef __ptrdiff_t_defined
-#define __ptrdiff_t_defined 1
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-/* We rely on the compiler's stddef.h to define ptrdiff_t for us. */
-#define __need_ptrdiff_t
-#include <stddef.h>
-#undef __need_ptrdiff_t
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* The guard macro for this header must match the guard macro used by
+ the compiler's stddef.h for ptrdiff_t specifically.
+ GCC's stddef.h checks a long list of other macros as well as this
+ one, in order to accommodate many different C libraries, but clang's
+ stddef.h only looks for this macro. Other compilers can reasonably
+ be expected to look for this macro as well. */
+#ifndef _PTRDIFF_T
+
+#ifdef __PTRDIFF_TYPE__
+
+/* If the predefined macro __PTRDIFF_TYPE__ is available, use it. */
+typedef __PTRDIFF_TYPE__ ptrdiff_t;
+
+#else
+
+/* Depending on the compiler, we may be able to persuade its stddef.h
+ to define ptrdiff_t and nothing else. If this feature is not
+ available, exposing everything defined by stddef.h is better than
+ not defining ptrdiff_t at all. */
+# define __need_ptrdiff_t
+# include <stddef.h>
+# undef __need_ptrdiff_t
+
+#endif
+
+/* This must not be defined until _after_ possibly including stddef.h. */
+#define _PTRDIFF_T
#endif
diff --git a/stdlib/bits/types/size_t.h b/stdlib/bits/types/size_t.h
index e151458..827ede3 100644
--- a/stdlib/bits/types/size_t.h
+++ b/stdlib/bits/types/size_t.h
@@ -1,9 +1,45 @@
-#ifndef __size_t_defined
-#define __size_t_defined 1
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-/* We rely on the compiler's stddef.h to define size_t for us. */
-#define __need_size_t
-#include <stddef.h>
-#undef __need_size_t
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* The guard macro for this header must match the guard macro used by
+ the compiler's stddef.h for size_t specifically.
+ GCC's stddef.h checks a long list of other macros as well as this
+ one, in order to accommodate many different C libraries, but clang's
+ stddef.h only looks for this macro. Other compilers can reasonably
+ be expected to look for this macro as well. */
+#ifndef _SIZE_T
+
+#ifdef __SIZE_TYPE__
+
+/* If the predefined macro __SIZE_TYPE__ is available, use it. */
+typedef __SIZE_TYPE__ size_t;
+
+#else
+
+/* Depending on the compiler, we may be able to persuade its stddef.h
+ to define size_t and nothing else. If this feature is not
+ available, exposing everything defined by stddef.h is better than
+ not defining size_t at all. */
+# define __need_size_t
+# include <stddef.h>
+# undef __need_size_t
+
+#endif
+
+/* This must not be defined until _after_ possibly including stddef.h. */
+#define _SIZE_T
#endif
diff --git a/stdlib/bits/types/va_list.h b/stdlib/bits/types/va_list.h
index 6f3acac..6e1db79 100644
--- a/stdlib/bits/types/va_list.h
+++ b/stdlib/bits/types/va_list.h
@@ -1,6 +1,26 @@
-/* This guard macro needs to match the one used by at least gcc and
- clang's stdarg.h to indicate that va_list, specifically, has been
- defined. */
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* The guard macro for this header must match the guard macro used by
+ the compiler's stdarg.h for va_list specifically.
+ GCC's stdarg.h checks several other macros as well as this one, in
+ order to accommodate many different C libraries, but clang's
+ stdarg.h only looks for this macro. Other compilers can reasonably
+ be expected to look for this macro as well. */
#ifndef _VA_LIST
#include <bits/types/__va_list.h>
@@ -8,8 +28,9 @@
/* Check again, __va_list.h may not have been able to avoid including
all of stdarg.h. */
# ifndef _VA_LIST
-typedef __gnuc_va_list va_list;
+typedef __va_list va_list;
# endif
-# define _VA_LIST
+/* This must not be defined until _after_ possibly including stdarg.h. */
+# define _VA_LIST
#endif
diff --git a/stdlib/bits/types/wchar_t.h b/stdlib/bits/types/wchar_t.h
index 1e44e15..ba0f94f 100644
--- a/stdlib/bits/types/wchar_t.h
+++ b/stdlib/bits/types/wchar_t.h
@@ -1,9 +1,50 @@
-#ifndef __wchar_t_defined
-#define __wchar_t_defined 1
+/* Copyright (C) 2019 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
-/* We rely on the compiler's stddef.h to define wchar_t for us. */
-#define __need_wchar_t
-#include <stddef.h>
-#undef __need_wchar_t
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* The guard macro for this header must match the guard macro used by
+ the compiler's stddef.h for wchar_t specifically.
+ GCC's stddef.h checks a long list of other macros as well as this
+ one, in order to accommodate many different C libraries, but clang's
+ stddef.h only looks for this macro. Other compilers can reasonably
+ be expected to look for this macro as well. */
+#ifndef _WCHAR_T
+
+#ifdef __cplusplus
+/* Do nothing; wchar_t is a built-in type and reserved word in C++. */
+#else
+
+# ifdef __WCHAR_TYPE__
+
+/* If the predefined macro __WCHAR_TYPE__ is available, use it. */
+typedef __WCHAR_TYPE__ wchar_t;
+
+# else
+
+/* Depending on the compiler, we may be able to persuade its stddef.h
+ to define wchar_t and nothing else. If this feature is not
+ available, exposing everything defined by stddef.h is better than
+ not defining wchar_t at all. */
+# define __need_wchar_t
+# include <stddef.h>
+# undef __need_wchar_t
+
+# endif /* not __WCHAR_TYPE__ */
+#endif /* not __cplusplus */
+
+/* This must not be defined until _after_ possibly including stddef.h. */
+#define _WCHAR_T
#endif
diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compat.c b/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
index ef5ab18..d5e8833 100644
--- a/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
+++ b/sysdeps/ieee754/ldbl-opt/nldbl-compat.c
@@ -1036,14 +1036,14 @@ __nldbl_errx (int status, const char *format, ...)
}
void
-__nldbl_verr (int status, const char *format, __gnuc_va_list ap)
+__nldbl_verr (int status, const char *format, __va_list ap)
{
__vwarn_internal (format, ap, PRINTF_LDBL_IS_DBL);
exit (status);
}
void
-__nldbl_verrx (int status, const char *format, __gnuc_va_list ap)
+__nldbl_verrx (int status, const char *format, __va_list ap)
{
__vwarnx_internal (format, ap, PRINTF_LDBL_IS_DBL);
exit (status);
@@ -1062,13 +1062,13 @@ __nldbl_warnx (const char *format, ...)
}
void
-__nldbl_vwarn (const char *format, __gnuc_va_list ap)
+__nldbl_vwarn (const char *format, __va_list ap)
{
__vwarn_internal (format, ap, PRINTF_LDBL_IS_DBL);
}
void
-__nldbl_vwarnx (const char *format, __gnuc_va_list ap)
+__nldbl_vwarnx (const char *format, __va_list ap)
{
__vwarnx_internal (format, ap, PRINTF_LDBL_IS_DBL);
}
diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compat.h b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h
index c2a01fc..74ecdf5 100644
--- a/sysdeps/ieee754/ldbl-opt/nldbl-compat.h
+++ b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h
@@ -103,23 +103,23 @@ extern ssize_t __nldbl___vstrfmon_l (char *, size_t, locale_t, const char *,
/* These don't use __typeof because they were not declared by the headers,
since we don't compile with _FORTIFY_SOURCE. */
extern int __nldbl___vfprintf_chk (FILE *__restrict, int,
- const char *__restrict, __gnuc_va_list);
+ const char *__restrict, __va_list);
extern int __nldbl___vfwprintf_chk (FILE *__restrict, int,
- const wchar_t *__restrict, __gnuc_va_list);
+ const wchar_t *__restrict, __va_list);
extern int __nldbl___vsprintf_chk (char *__restrict, int, size_t,
- const char *__restrict, __gnuc_va_list)
+ const char *__restrict, __va_list)
__THROW;
extern int __nldbl___vsnprintf_chk (char *__restrict, size_t, int, size_t,
- const char *__restrict, __gnuc_va_list)
+ const char *__restrict, __va_list)
__THROW;
extern int __nldbl___vswprintf_chk (wchar_t *__restrict, size_t, int, size_t,
- const wchar_t *__restrict, __gnuc_va_list)
+ const wchar_t *__restrict, __va_list)
__THROW;
-extern int __nldbl___vasprintf_chk (char **, int, const char *, __gnuc_va_list)
+extern int __nldbl___vasprintf_chk (char **, int, const char *, __va_list)
__THROW;
-extern int __nldbl___vdprintf_chk (int, int, const char *, __gnuc_va_list);
+extern int __nldbl___vdprintf_chk (int, int, const char *, __va_list);
extern int __nldbl___obstack_vprintf_chk (struct obstack *, int, const char *,
- __gnuc_va_list) __THROW;
+ __va_list) __THROW;
extern void __nldbl___vsyslog_chk (int, int, const char *, va_list);
/* The original declarations of these were hidden by the including
diff --git a/wcsmbs/bits/wchar2.h b/wcsmbs/bits/wchar2.h
index 86e8e23..defd9b2 100644
--- a/wcsmbs/bits/wchar2.h
+++ b/wcsmbs/bits/wchar2.h
@@ -303,17 +303,17 @@ __NTH (swprintf (wchar_t *__restrict __s, size_t __n,
extern int __vswprintf_chk (wchar_t *__restrict __s, size_t __n,
int __flag, size_t __s_len,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__THROW /* __attribute__ ((__format__ (__wprintf__, 5, 0))) */;
extern int __REDIRECT_NTH_LDBL (__vswprintf_alias,
(wchar_t *__restrict __s, size_t __n,
const wchar_t *__restrict __fmt,
- __gnuc_va_list __ap), vswprintf);
+ __va_list __ap), vswprintf);
__fortify_function int
__NTH (vswprintf (wchar_t *__restrict __s, size_t __n,
- const wchar_t *__restrict __fmt, __gnuc_va_list __ap))
+ const wchar_t *__restrict __fmt, __va_list __ap))
{
if (__bos (__s) != (size_t) -1 || __USE_FORTIFY_LEVEL > 1)
return __vswprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
@@ -330,9 +330,9 @@ extern int __wprintf_chk (int __flag, const wchar_t *__restrict __format,
...);
extern int __vfwprintf_chk (__FILE *__restrict __stream, int __flag,
const wchar_t *__restrict __format,
- __gnuc_va_list __ap);
+ __va_list __ap);
extern int __vwprintf_chk (int __flag, const wchar_t *__restrict __format,
- __gnuc_va_list __ap);
+ __va_list __ap);
# ifdef __va_arg_pack
__fortify_function int
@@ -355,14 +355,14 @@ fwprintf (__FILE *__restrict __stream, const wchar_t *__restrict __fmt, ...)
# endif
__fortify_function int
-vwprintf (const wchar_t *__restrict __fmt, __gnuc_va_list __ap)
+vwprintf (const wchar_t *__restrict __fmt, __va_list __ap)
{
return __vwprintf_chk (__USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
__fortify_function int
vfwprintf (__FILE *__restrict __stream,
- const wchar_t *__restrict __fmt, __gnuc_va_list __ap)
+ const wchar_t *__restrict __fmt, __va_list __ap)
{
return __vfwprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
diff --git a/wcsmbs/wchar.h b/wcsmbs/wchar.h
index 71e53c8..0357287 100644
--- a/wcsmbs/wchar.h
+++ b/wcsmbs/wchar.h
@@ -593,20 +593,20 @@ extern int swprintf (wchar_t *__restrict __s, size_t __n,
marked with __THROW. */
extern int vfwprintf (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wprintf__, 2, 0))) */;
/* Write formatted output to stdout from argument list ARG.
This function is a possible cancellation point and therefore not
marked with __THROW. */
extern int vwprintf (const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wprintf__, 1, 0))) */;
/* Write formatted output of at most N character to S from argument
list ARG. */
extern int vswprintf (wchar_t *__restrict __s, size_t __n,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__THROW /* __attribute__ ((__format__ (__wprintf__, 3, 0))) */;
@@ -666,19 +666,19 @@ extern int __isoc99_swscanf (const wchar_t *__restrict __s,
marked with __THROW. */
extern int vfwscanf (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wscanf__, 2, 0))) */;
/* Read formatted input from stdin into argument list ARG.
This function is a possible cancellation point and therefore not
marked with __THROW. */
extern int vwscanf (const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
/* __attribute__ ((__format__ (__wscanf__, 1, 0))) */;
/* Read formatted input from S into argument list ARG. */
extern int vswscanf (const wchar_t *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg)
+ __va_list __arg)
__THROW /* __attribute__ ((__format__ (__wscanf__, 2, 0))) */;
/* Same redirection as above for the v*wscanf family. */
@@ -688,24 +688,24 @@ extern int vswscanf (const wchar_t *__restrict __s,
# ifdef __REDIRECT
extern int __REDIRECT (vfwscanf, (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg), __isoc99_vfwscanf)
+ __va_list __arg), __isoc99_vfwscanf)
/* __attribute__ ((__format__ (__wscanf__, 2, 0))) */;
extern int __REDIRECT (vwscanf, (const wchar_t *__restrict __format,
- __gnuc_va_list __arg), __isoc99_vwscanf)
+ __va_list __arg), __isoc99_vwscanf)
/* __attribute__ ((__format__ (__wscanf__, 1, 0))) */;
extern int __REDIRECT_NTH (vswscanf, (const wchar_t *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg), __isoc99_vswscanf)
+ __va_list __arg), __isoc99_vswscanf)
/* __attribute__ ((__format__ (__wscanf__, 2, 0))) */;
# else
extern int __isoc99_vfwscanf (__FILE *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg);
+ __va_list __arg);
extern int __isoc99_vwscanf (const wchar_t *__restrict __format,
- __gnuc_va_list __arg);
+ __va_list __arg);
extern int __isoc99_vswscanf (const wchar_t *__restrict __s,
const wchar_t *__restrict __format,
- __gnuc_va_list __arg) __THROW;
+ __va_list __arg) __THROW;
# define vfwscanf __isoc99_vfwscanf
# define vwscanf __isoc99_vwscanf
# define vswscanf __isoc99_vswscanf