summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-06-15 19:59:47 (GMT)
committerGitHub <noreply@github.com>2020-06-15 19:59:47 (GMT)
commite822e37946f27c09953bb5733acf3b07c2db690f (patch)
treed0bb8d8769be9f469aa6675fb820bc41acfd65c5 /Include
parent5f79f46612c351bde78a41c5264c42db21008868 (diff)
downloadcpython-e822e37946f27c09953bb5733acf3b07c2db690f.zip
cpython-e822e37946f27c09953bb5733acf3b07c2db690f.tar.gz
cpython-e822e37946f27c09953bb5733acf3b07c2db690f.tar.bz2
bpo-36020: Remove snprintf macro in pyerrors.h (GH-20889)
On Windows, #include "pyerrors.h" no longer defines "snprintf" and "vsnprintf" macros. PyOS_snprintf() and PyOS_vsnprintf() should be used to get portable behavior. Replace snprintf() calls with PyOS_snprintf() and replace vsnprintf() calls with PyOS_vsnprintf().
Diffstat (limited to 'Include')
-rw-r--r--Include/pyerrors.h17
1 files changed, 2 insertions, 15 deletions
diff --git a/Include/pyerrors.h b/Include/pyerrors.h
index 399bb7c..979a26b 100644
--- a/Include/pyerrors.h
+++ b/Include/pyerrors.h
@@ -4,6 +4,8 @@
extern "C" {
#endif
+#include <stdarg.h> // va_list
+
/* Error handling definitions */
PyAPI_FUNC(void) PyErr_SetNone(PyObject *);
@@ -307,21 +309,6 @@ PyAPI_FUNC(int) PyUnicodeTranslateError_SetReason(
const char *reason /* UTF-8 encoded string */
);
-/* These APIs aren't really part of the error implementation, but
- often needed to format error messages; the native C lib APIs are
- not available on all platforms, which is why we provide emulations
- for those platforms in Python/mysnprintf.c,
- WARNING: The return value of snprintf varies across platforms; do
- not rely on any particular behavior; eventually the C99 defn may
- be reliable.
-*/
-#if defined(MS_WIN32) && !defined(HAVE_SNPRINTF)
-# define HAVE_SNPRINTF
-# define snprintf _snprintf
-# define vsnprintf _vsnprintf
-#endif
-
-#include <stdarg.h>
PyAPI_FUNC(int) PyOS_snprintf(char *str, size_t size, const char *format, ...)
Py_GCC_ATTRIBUTE((format(printf, 3, 4)));
PyAPI_FUNC(int) PyOS_vsnprintf(char *str, size_t size, const char *format, va_list va)