forked from Imagelibrary/binutils-gdb
gnulib: update to 776af40e0
This fixes PR27184, a failure to compile gdb due to cdefs.h being out of sync with glibc on ppc64le targets which are compiled with -mabi=ieeelongdouble and glibc 2.32. Likewise, update usage of _GL_ATTRIBUTE_FORMAT_PRINTF to _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD. Likewise, disable newly added rpl_free gnulib api in gdbserver support libraries. Likewise, undefine read/write macros before redefining them on mingw targets. Likewise, wrap C++ usage of free with GNULIB_NAMESPACE namespace as needed. Change-Id: I86517613c0d8ac8f5ea45bbc4ebe2b54a3aef29f
This commit is contained in:
committed by
Simon Marchi
parent
0110ec824e
commit
9c9d63b15a
@@ -1,6 +1,6 @@
|
||||
/* A GNU-like <stdio.h>.
|
||||
|
||||
Copyright (C) 2004, 2007-2020 Free Software Foundation, Inc.
|
||||
Copyright (C) 2004, 2007-2021 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -63,36 +63,50 @@
|
||||
gnulib and libintl do '#define printf __printf__' when they override
|
||||
the 'printf' function. */
|
||||
#ifndef _GL_ATTRIBUTE_FORMAT
|
||||
# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
|
||||
# if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7) || defined __clang__
|
||||
# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec))
|
||||
# else
|
||||
# define _GL_ATTRIBUTE_FORMAT(spec) /* empty */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* _GL_ATTRIBUTE_FORMAT_PRINTF
|
||||
/* An __attribute__ __format__ specifier for a function that takes a format
|
||||
string and arguments, where the format string directives are the ones
|
||||
standardized by ISO C99 and POSIX.
|
||||
_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD */
|
||||
/* __gnu_printf__ is supported in GCC >= 4.4. */
|
||||
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
|
||||
# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __gnu_printf__
|
||||
#else
|
||||
# define _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD __printf__
|
||||
#endif
|
||||
|
||||
/* An __attribute__ __format__ specifier for a function that takes a format
|
||||
string and arguments, where the format string directives are the ones of the
|
||||
system printf(), rather than the ones standardized by ISO C99 and POSIX.
|
||||
_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM */
|
||||
/* On mingw, Gnulib sets __USE_MINGW_ANSI_STDIO in order to get closer to
|
||||
the standards. The macro GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU indicates
|
||||
whether this change is effective. On older mingw, it is not. */
|
||||
#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
|
||||
# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM _GL_ATTRIBUTE_SPEC_PRINTF_STANDARD
|
||||
#else
|
||||
# define _GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM __printf__
|
||||
#endif
|
||||
|
||||
/* _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD
|
||||
indicates to GCC that the function takes a format string and arguments,
|
||||
where the format string directives are the ones standardized by ISO C99
|
||||
and POSIX. */
|
||||
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4)
|
||||
# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT ((__gnu_printf__, formatstring_parameter, first_argument))
|
||||
#else
|
||||
# define _GL_ATTRIBUTE_FORMAT_PRINTF(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
|
||||
#endif
|
||||
#define _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_STANDARD, formatstring_parameter, first_argument))
|
||||
|
||||
/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF,
|
||||
/* _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM is like _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD,
|
||||
except that it indicates to GCC that the supported format string directives
|
||||
are the ones of the system printf(), rather than the ones standardized by
|
||||
ISO C99 and POSIX. */
|
||||
#if GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU
|
||||
# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (formatstring_parameter, first_argument)
|
||||
#else
|
||||
# define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
|
||||
#endif
|
||||
#define _GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM(formatstring_parameter, first_argument) \
|
||||
_GL_ATTRIBUTE_FORMAT ((_GL_ATTRIBUTE_SPEC_PRINTF_SYSTEM, formatstring_parameter, first_argument))
|
||||
|
||||
/* _GL_ATTRIBUTE_FORMAT_SCANF
|
||||
indicates to GCC that the function takes a format string and arguments,
|
||||
@@ -174,13 +188,13 @@
|
||||
# define dprintf rpl_dprintf
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (dprintf, int, (int fd, const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((2)));
|
||||
_GL_CXXALIAS_RPL (dprintf, int, (int fd, const char *restrict format, ...));
|
||||
# else
|
||||
# if !@HAVE_DPRINTF@
|
||||
_GL_FUNCDECL_SYS (dprintf, int, (int fd, const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((2)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (dprintf, int, (int fd, const char *restrict format, ...));
|
||||
@@ -215,6 +229,31 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
|
||||
"use gnulib module fclose for portable POSIX compliance");
|
||||
#endif
|
||||
|
||||
#if @GNULIB_MDA_FCLOSEALL@
|
||||
/* On native Windows, map 'fcloseall' to '_fcloseall', so that -loldnames is
|
||||
not required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::fcloseall on all platforms that have
|
||||
it. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef fcloseall
|
||||
# define fcloseall _fcloseall
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (fcloseall, int, (void));
|
||||
# else
|
||||
# if @HAVE_DECL_FCLOSEALL@
|
||||
# if defined __FreeBSD__
|
||||
_GL_CXXALIAS_SYS (fcloseall, void, (void));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (fcloseall, int, (void));
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
# if (defined _WIN32 && !defined __CYGWIN__) || @HAVE_DECL_FCLOSEALL@
|
||||
_GL_CXXALIASWARN (fcloseall);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if @GNULIB_FDOPEN@
|
||||
# if @REPLACE_FDOPEN@
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
@@ -224,6 +263,12 @@ _GL_WARN_ON_USE (fclose, "fclose is not always POSIX compliant - "
|
||||
_GL_FUNCDECL_RPL (fdopen, FILE *, (int fd, const char *mode)
|
||||
_GL_ARG_NONNULL ((2)));
|
||||
_GL_CXXALIAS_RPL (fdopen, FILE *, (int fd, const char *mode));
|
||||
# elif defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef fdopen
|
||||
# define fdopen _fdopen
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
|
||||
# endif
|
||||
@@ -233,6 +278,20 @@ _GL_CXXALIASWARN (fdopen);
|
||||
/* Assume fdopen is always declared. */
|
||||
_GL_WARN_ON_USE (fdopen, "fdopen on native Windows platforms is not POSIX compliant - "
|
||||
"use gnulib module fdopen for portability");
|
||||
#elif @GNULIB_MDA_FDOPEN@
|
||||
/* On native Windows, map 'fdopen' to '_fdopen', so that -loldnames is not
|
||||
required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::fdopen always. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef fdopen
|
||||
# define fdopen _fdopen
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (fdopen, FILE *, (int fd, const char *mode));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (fdopen, FILE *, (int fd, const char *mode));
|
||||
# endif
|
||||
_GL_CXXALIASWARN (fdopen);
|
||||
#endif
|
||||
|
||||
#if @GNULIB_FFLUSH@
|
||||
@@ -297,6 +356,22 @@ _GL_CXXALIASWARN (fgets);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if @GNULIB_MDA_FILENO@
|
||||
/* On native Windows, map 'fileno' to '_fileno', so that -loldnames is not
|
||||
required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::fileno always. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef fileno
|
||||
# define fileno _fileno
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (fileno, int, (FILE *restrict stream));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (fileno, int, (FILE *restrict stream));
|
||||
# endif
|
||||
_GL_CXXALIASWARN (fileno);
|
||||
#endif
|
||||
|
||||
#if @GNULIB_FOPEN@
|
||||
# if @REPLACE_FOPEN@
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
@@ -332,7 +407,7 @@ _GL_WARN_ON_USE (fopen, "fopen on native Windows platforms is not POSIX complian
|
||||
# if @GNULIB_FPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
|
||||
_GL_FUNCDECL_RPL (fprintf, int,
|
||||
(FILE *restrict fp, const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# else
|
||||
_GL_FUNCDECL_RPL (fprintf, int,
|
||||
@@ -824,6 +899,22 @@ _GL_WARN_ON_USE (getline, "getline is unportable - "
|
||||
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
|
||||
#endif
|
||||
|
||||
#if @GNULIB_MDA_GETW@
|
||||
/* On native Windows, map 'getw' to '_getw', so that -loldnames is not
|
||||
required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::getw always. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef getw
|
||||
# define getw _getw
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (getw, int, (FILE *restrict stream));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (getw, int, (FILE *restrict stream));
|
||||
# endif
|
||||
_GL_CXXALIASWARN (getw);
|
||||
#endif
|
||||
|
||||
#if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
|
||||
struct obstack;
|
||||
/* Grow an obstack with formatted output. Return the number of
|
||||
@@ -837,7 +928,7 @@ struct obstack;
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (obstack_printf, int,
|
||||
(struct obstack *obs, const char *format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (obstack_printf, int,
|
||||
(struct obstack *obs, const char *format, ...));
|
||||
@@ -845,7 +936,7 @@ _GL_CXXALIAS_RPL (obstack_printf, int,
|
||||
# if !@HAVE_DECL_OBSTACK_PRINTF@
|
||||
_GL_FUNCDECL_SYS (obstack_printf, int,
|
||||
(struct obstack *obs, const char *format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (obstack_printf, int,
|
||||
@@ -858,7 +949,7 @@ _GL_CXXALIASWARN (obstack_printf);
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (obstack_vprintf, int,
|
||||
(struct obstack *obs, const char *format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (obstack_vprintf, int,
|
||||
(struct obstack *obs, const char *format, va_list args));
|
||||
@@ -866,7 +957,7 @@ _GL_CXXALIAS_RPL (obstack_vprintf, int,
|
||||
# if !@HAVE_DECL_OBSTACK_PRINTF@
|
||||
_GL_FUNCDECL_SYS (obstack_vprintf, int,
|
||||
(struct obstack *obs, const char *format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (obstack_vprintf, int,
|
||||
@@ -940,7 +1031,7 @@ _GL_WARN_ON_USE (popen, "popen is buggy on some platforms - "
|
||||
#if @GNULIB_PRINTF_POSIX@ || @GNULIB_PRINTF@
|
||||
# if (@GNULIB_PRINTF_POSIX@ && @REPLACE_PRINTF@) \
|
||||
|| (@GNULIB_PRINTF@ && @REPLACE_STDIO_WRITE_FUNCS@ && (@GNULIB_STDIO_H_NONBLOCKING@ || @GNULIB_STDIO_H_SIGPIPE@))
|
||||
# if defined __GNUC__
|
||||
# if defined __GNUC__ || defined __clang__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
/* Don't break __attribute__((format(printf,M,N))). */
|
||||
# define printf __printf__
|
||||
@@ -950,7 +1041,7 @@ _GL_FUNCDECL_RPL_1 (__printf__, int,
|
||||
(const char *restrict format, ...)
|
||||
__asm__ (@ASM_SYMBOL_PREFIX@
|
||||
_GL_STDIO_MACROEXPAND_AND_STRINGIZE(rpl_printf))
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
|
||||
_GL_ARG_NONNULL ((1)));
|
||||
# else
|
||||
_GL_FUNCDECL_RPL_1 (__printf__, int,
|
||||
@@ -967,7 +1058,7 @@ _GL_CXXALIAS_RPL_1 (printf, __printf__, int, (const char *format, ...));
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (printf, int,
|
||||
(const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (1, 2)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 2)
|
||||
_GL_ARG_NONNULL ((1)));
|
||||
_GL_CXXALIAS_RPL (printf, int, (const char *restrict format, ...));
|
||||
# endif
|
||||
@@ -1037,6 +1128,22 @@ _GL_CXXALIASWARN (puts);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if @GNULIB_MDA_PUTW@
|
||||
/* On native Windows, map 'putw' to '_putw', so that -loldnames is not
|
||||
required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::putw always. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef putw
|
||||
# define putw _putw
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (putw, int, (int w, FILE *restrict stream));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (putw, int, (int w, FILE *restrict stream));
|
||||
# endif
|
||||
_GL_CXXALIASWARN (putw);
|
||||
#endif
|
||||
|
||||
#if @GNULIB_REMOVE@
|
||||
# if @REPLACE_REMOVE@
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
@@ -1114,7 +1221,7 @@ _GL_WARN_ON_USE (renameat, "renameat is not portable - "
|
||||
|
||||
#if @GNULIB_SCANF@
|
||||
# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
|
||||
# if defined __GNUC__
|
||||
# if defined __GNUC__ || defined __clang__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef scanf
|
||||
/* Don't break __attribute__((format(scanf,M,N))). */
|
||||
@@ -1153,7 +1260,7 @@ _GL_CXXALIASWARN (scanf);
|
||||
_GL_FUNCDECL_RPL (snprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
|
||||
_GL_ARG_NONNULL ((3)));
|
||||
_GL_CXXALIAS_RPL (snprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
@@ -1163,14 +1270,16 @@ _GL_CXXALIAS_RPL (snprintf, int,
|
||||
_GL_FUNCDECL_SYS (snprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (3, 4)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 4)
|
||||
_GL_ARG_NONNULL ((3)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (snprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, ...));
|
||||
# endif
|
||||
# if __GLIBC__ >= 2
|
||||
_GL_CXXALIASWARN (snprintf);
|
||||
# endif
|
||||
#elif defined GNULIB_POSIXCHECK
|
||||
# undef snprintf
|
||||
# if HAVE_RAW_DECL_SNPRINTF
|
||||
@@ -1195,7 +1304,7 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - "
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (sprintf, int,
|
||||
(char *restrict str, const char *restrict format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (sprintf, int,
|
||||
(char *restrict str, const char *restrict format, ...));
|
||||
@@ -1214,6 +1323,22 @@ _GL_WARN_ON_USE (sprintf, "sprintf is not always POSIX compliant - "
|
||||
"POSIX compliance");
|
||||
#endif
|
||||
|
||||
#if @GNULIB_MDA_TEMPNAM@
|
||||
/* On native Windows, map 'tempnam' to '_tempnam', so that -loldnames is not
|
||||
required. In C++ with GNULIB_NAMESPACE, avoid differences between
|
||||
platforms by defining GNULIB_NAMESPACE::tempnam always. */
|
||||
# if defined _WIN32 && !defined __CYGWIN__
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
# undef tempnam
|
||||
# define tempnam _tempnam
|
||||
# endif
|
||||
_GL_CXXALIAS_MDA (tempnam, char *, (const char *dir, const char *prefix));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (tempnam, char *, (const char *dir, const char *prefix));
|
||||
# endif
|
||||
_GL_CXXALIASWARN (tempnam);
|
||||
#endif
|
||||
|
||||
#if @GNULIB_TMPFILE@
|
||||
# if @REPLACE_TMPFILE@
|
||||
# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
|
||||
@@ -1246,7 +1371,7 @@ _GL_WARN_ON_USE (tmpfile, "tmpfile is not usable on mingw - "
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (asprintf, int,
|
||||
(char **result, const char *format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (asprintf, int,
|
||||
(char **result, const char *format, ...));
|
||||
@@ -1254,7 +1379,7 @@ _GL_CXXALIAS_RPL (asprintf, int,
|
||||
# if !@HAVE_VASPRINTF@
|
||||
_GL_FUNCDECL_SYS (asprintf, int,
|
||||
(char **result, const char *format, ...)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 3)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (asprintf, int,
|
||||
@@ -1267,7 +1392,7 @@ _GL_CXXALIASWARN (asprintf);
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (vasprintf, int,
|
||||
(char **result, const char *format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (vasprintf, int,
|
||||
(char **result, const char *format, va_list args));
|
||||
@@ -1275,7 +1400,7 @@ _GL_CXXALIAS_RPL (vasprintf, int,
|
||||
# if !@HAVE_VASPRINTF@
|
||||
_GL_FUNCDECL_SYS (vasprintf, int,
|
||||
(char **result, const char *format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (vasprintf, int,
|
||||
@@ -1291,7 +1416,7 @@ _GL_CXXALIASWARN (vasprintf);
|
||||
# endif
|
||||
_GL_FUNCDECL_RPL (vdprintf, int,
|
||||
(int fd, const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((2)));
|
||||
_GL_CXXALIAS_RPL (vdprintf, int,
|
||||
(int fd, const char *restrict format, va_list args));
|
||||
@@ -1299,7 +1424,7 @@ _GL_CXXALIAS_RPL (vdprintf, int,
|
||||
# if !@HAVE_VDPRINTF@
|
||||
_GL_FUNCDECL_SYS (vdprintf, int,
|
||||
(int fd, const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((2)));
|
||||
# endif
|
||||
/* Need to cast, because on Solaris, the third parameter will likely be
|
||||
@@ -1329,7 +1454,7 @@ _GL_WARN_ON_USE (vdprintf, "vdprintf is unportable - "
|
||||
_GL_FUNCDECL_RPL (vfprintf, int,
|
||||
(FILE *restrict fp,
|
||||
const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
# else
|
||||
_GL_FUNCDECL_RPL (vfprintf, int,
|
||||
@@ -1382,7 +1507,9 @@ _GL_CXXALIAS_SYS (vfscanf, int,
|
||||
(FILE *restrict stream,
|
||||
const char *restrict format, va_list args));
|
||||
# endif
|
||||
# if __GLIBC__ >= 2
|
||||
_GL_CXXALIASWARN (vfscanf);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VPRINTF@
|
||||
@@ -1394,7 +1521,7 @@ _GL_CXXALIASWARN (vfscanf);
|
||||
# define GNULIB_overrides_vprintf 1
|
||||
# if @GNULIB_VPRINTF_POSIX@ || @GNULIB_VFPRINTF_POSIX@
|
||||
_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (1, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (1, 0)
|
||||
_GL_ARG_NONNULL ((1)));
|
||||
# else
|
||||
_GL_FUNCDECL_RPL (vprintf, int, (const char *restrict format, va_list args)
|
||||
@@ -1436,7 +1563,9 @@ _GL_CXXALIAS_RPL (vscanf, int, (const char *restrict format, va_list args));
|
||||
# else
|
||||
_GL_CXXALIAS_SYS (vscanf, int, (const char *restrict format, va_list args));
|
||||
# endif
|
||||
# if __GLIBC__ >= 2
|
||||
_GL_CXXALIASWARN (vscanf);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if @GNULIB_VSNPRINTF@
|
||||
@@ -1447,7 +1576,7 @@ _GL_CXXALIASWARN (vscanf);
|
||||
_GL_FUNCDECL_RPL (vsnprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
|
||||
_GL_ARG_NONNULL ((3)));
|
||||
_GL_CXXALIAS_RPL (vsnprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
@@ -1457,14 +1586,16 @@ _GL_CXXALIAS_RPL (vsnprintf, int,
|
||||
_GL_FUNCDECL_SYS (vsnprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (3, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (3, 0)
|
||||
_GL_ARG_NONNULL ((3)));
|
||||
# endif
|
||||
_GL_CXXALIAS_SYS (vsnprintf, int,
|
||||
(char *restrict str, size_t size,
|
||||
const char *restrict format, va_list args));
|
||||
# endif
|
||||
# if __GLIBC__ >= 2
|
||||
_GL_CXXALIASWARN (vsnprintf);
|
||||
# endif
|
||||
#elif defined GNULIB_POSIXCHECK
|
||||
# undef vsnprintf
|
||||
# if HAVE_RAW_DECL_VSNPRINTF
|
||||
@@ -1481,7 +1612,7 @@ _GL_WARN_ON_USE (vsnprintf, "vsnprintf is unportable - "
|
||||
_GL_FUNCDECL_RPL (vsprintf, int,
|
||||
(char *restrict str,
|
||||
const char *restrict format, va_list args)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF (2, 0)
|
||||
_GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
|
||||
_GL_ARG_NONNULL ((1, 2)));
|
||||
_GL_CXXALIAS_RPL (vsprintf, int,
|
||||
(char *restrict str,
|
||||
|
||||
Reference in New Issue
Block a user