summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-02-12 21:54:42 (GMT)
committerGitHub <noreply@github.com>2020-02-12 21:54:42 (GMT)
commite9e7d284c434768333fdfb53a3663eae74cb995a (patch)
treee9606ee5a7cf9801138448fe50aad004b05b188b /Include
parent45876a90e2663f12b90c2090ec3e48bd97841aae (diff)
downloadcpython-e9e7d284c434768333fdfb53a3663eae74cb995a.zip
cpython-e9e7d284c434768333fdfb53a3663eae74cb995a.tar.gz
cpython-e9e7d284c434768333fdfb53a3663eae74cb995a.tar.bz2
bpo-35081: Move dtoa.h header to the internal C API (GH-18489)
Move the dtoa.h header file to the internal C API as pycore_dtoa.h: it only contains private functions (prefixed by "_Py"). The math and cmath modules must now be compiled with the Py_BUILD_CORE macro defined.
Diffstat (limited to 'Include')
-rw-r--r--Include/Python.h1
-rw-r--r--Include/internal/pycore_dtoa.h (renamed from Include/dtoa.h)12
2 files changed, 8 insertions, 5 deletions
diff --git a/Include/Python.h b/Include/Python.h
index d6e5b13..969d8e6 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -152,7 +152,6 @@
#include "pyctype.h"
#include "pystrtod.h"
#include "pystrcmp.h"
-#include "dtoa.h"
#include "fileutils.h"
#include "pyfpe.h"
#include "tracemalloc.h"
diff --git a/Include/dtoa.h b/Include/internal/pycore_dtoa.h
index 9bfb625..3faf8cf 100644
--- a/Include/dtoa.h
+++ b/Include/internal/pycore_dtoa.h
@@ -1,9 +1,15 @@
-#ifndef Py_LIMITED_API
#ifndef PY_NO_SHORT_FLOAT_REPR
#ifdef __cplusplus
extern "C" {
#endif
+#ifndef Py_BUILD_CORE
+# error "this header requires Py_BUILD_CORE define"
+#endif
+
+/* These functions are used by modules compiled as C extension like math:
+ they must be exported. */
+
PyAPI_FUNC(double) _Py_dg_strtod(const char *str, char **ptr);
PyAPI_FUNC(char *) _Py_dg_dtoa(double d, int mode, int ndigits,
int *decpt, int *sign, char **rve);
@@ -11,9 +17,7 @@ PyAPI_FUNC(void) _Py_dg_freedtoa(char *s);
PyAPI_FUNC(double) _Py_dg_stdnan(int sign);
PyAPI_FUNC(double) _Py_dg_infinity(int sign);
-
#ifdef __cplusplus
}
#endif
-#endif
-#endif
+#endif /* !PY_NO_SHORT_FLOAT_REPR */