summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorPetr Viktorin <encukou@gmail.com>2021-04-23 12:17:58 (GMT)
committerGitHub <noreply@github.com>2021-04-23 12:17:58 (GMT)
commit9d6a2d0ee7e55402656e1dec46400591b62db331 (patch)
treec9d5c5cb1aca48f6fc10ea337d728293c63ac457 /Include
parente7cc64e297001cc79b9afab80f71d9e6d1267cb7 (diff)
downloadcpython-9d6a2d0ee7e55402656e1dec46400591b62db331.zip
cpython-9d6a2d0ee7e55402656e1dec46400591b62db331.tar.gz
cpython-9d6a2d0ee7e55402656e1dec46400591b62db331.tar.bz2
bpo-43795: PEP-652: Clean up the stable ABI/limited API (GH-25482)
- `_Py_EncodeLocaleRaw`, which is private by name, undocumented, and wasn't exported in `python3.dll`, is moved to a private header. - `_Py_HashSecret_Initialized`, again private by name, undocumented, and not exported in `python3.dll`, is excluded with `Py_LIMITED_API`. - `PyMarshal_*` and `PyMember_*One` functions, declared in private headers and not exported in `python3.dll`, are removed from `Doc/data/stable_abi.dat`. - `PyMem_Calloc` which *was* exported in `python3dll.c`, is moved to public headers where it joins its other `PyMem_*` friends. Only the last change is documented in the blurb; others are not user-visible. (Nothing uses `Doc/data/stable_abi.dat` yet.) https://bugs.python.org/issue43795
Diffstat (limited to 'Include')
-rw-r--r--Include/cpython/fileutils.h3
-rw-r--r--Include/cpython/pymem.h2
-rw-r--r--Include/fileutils.h4
-rw-r--r--Include/pyhash.h2
-rw-r--r--Include/pymem.h1
5 files changed, 4 insertions, 8 deletions
diff --git a/Include/cpython/fileutils.h b/Include/cpython/fileutils.h
index 312fd95..954f078 100644
--- a/Include/cpython/fileutils.h
+++ b/Include/cpython/fileutils.h
@@ -32,6 +32,9 @@ PyAPI_FUNC(int) _Py_EncodeLocaleEx(
int current_locale,
_Py_error_handler errors);
+PyAPI_FUNC(char*) _Py_EncodeLocaleRaw(
+ const wchar_t *text,
+ size_t *error_pos);
PyAPI_FUNC(PyObject *) _Py_device_encoding(int);
diff --git a/Include/cpython/pymem.h b/Include/cpython/pymem.h
index 61d7195..d1054d7 100644
--- a/Include/cpython/pymem.h
+++ b/Include/cpython/pymem.h
@@ -10,8 +10,6 @@ PyAPI_FUNC(void) PyMem_RawFree(void *ptr);
/* Try to get the allocators name set by _PyMem_SetupAllocators(). */
PyAPI_FUNC(const char*) _PyMem_GetCurrentAllocatorName(void);
-PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize);
-
/* strdup() using PyMem_RawMalloc() */
PyAPI_FUNC(char *) _PyMem_RawStrdup(const char *str);
diff --git a/Include/fileutils.h b/Include/fileutils.h
index 12bd071..16f3b63 100644
--- a/Include/fileutils.h
+++ b/Include/fileutils.h
@@ -12,10 +12,6 @@ PyAPI_FUNC(wchar_t *) Py_DecodeLocale(
PyAPI_FUNC(char*) Py_EncodeLocale(
const wchar_t *text,
size_t *error_pos);
-
-PyAPI_FUNC(char*) _Py_EncodeLocaleRaw(
- const wchar_t *text,
- size_t *error_pos);
#endif
#ifndef Py_LIMITED_API
diff --git a/Include/pyhash.h b/Include/pyhash.h
index 728ef93..a314ea9 100644
--- a/Include/pyhash.h
+++ b/Include/pyhash.h
@@ -76,7 +76,6 @@ typedef union {
} expat;
} _Py_HashSecret_t;
PyAPI_DATA(_Py_HashSecret_t) _Py_HashSecret;
-#endif
#ifdef Py_DEBUG
PyAPI_DATA(int) _Py_HashSecret_Initialized;
@@ -84,7 +83,6 @@ PyAPI_DATA(int) _Py_HashSecret_Initialized;
/* hash function definition */
-#ifndef Py_LIMITED_API
typedef struct {
Py_hash_t (*const hash)(const void *, Py_ssize_t);
const char *name;
diff --git a/Include/pymem.h b/Include/pymem.h
index 92cd536..2f770b1 100644
--- a/Include/pymem.h
+++ b/Include/pymem.h
@@ -50,6 +50,7 @@ extern "C" {
*/
PyAPI_FUNC(void *) PyMem_Malloc(size_t size);
+PyAPI_FUNC(void *) PyMem_Calloc(size_t nelem, size_t elsize);
PyAPI_FUNC(void *) PyMem_Realloc(void *ptr, size_t new_size);
PyAPI_FUNC(void) PyMem_Free(void *ptr);