summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Include/internal/mem.h12
-rw-r--r--Include/pymem.h10
-rw-r--r--Modules/main.c1
-rw-r--r--Objects/obmalloc.c1
-rw-r--r--Python/coreconfig.c1
-rw-r--r--Python/import.c1
-rw-r--r--Python/pathconfig.c1
-rw-r--r--Python/pylifecycle.c1
-rw-r--r--Python/pystate.c1
-rw-r--r--Python/sysmodule.c1
10 files changed, 20 insertions, 10 deletions
diff --git a/Include/internal/mem.h b/Include/internal/mem.h
index a731e30..4a41b77 100644
--- a/Include/internal/mem.h
+++ b/Include/internal/mem.h
@@ -4,6 +4,10 @@
extern "C" {
#endif
+#ifndef Py_BUILD_CORE
+# error "Py_BUILD_CORE must be defined to include this header"
+#endif
+
#include "objimpl.h"
#include "pymem.h"
@@ -145,6 +149,14 @@ PyAPI_FUNC(void) _PyGC_Initialize(struct _gc_runtime_state *);
#define _PyGC_generation0 _PyRuntime.gc.generation0
+
+/* Set the memory allocator of the specified domain to the default.
+ Save the old allocator into *old_alloc if it's non-NULL.
+ Return on success, or return -1 if the domain is unknown. */
+PyAPI_FUNC(int) _PyMem_SetDefaultAllocator(
+ PyMemAllocatorDomain domain,
+ PyMemAllocatorEx *old_alloc);
+
#ifdef __cplusplus
}
#endif
diff --git a/Include/pymem.h b/Include/pymem.h
index 19f0c8a..23457ad 100644
--- a/Include/pymem.h
+++ b/Include/pymem.h
@@ -198,16 +198,6 @@ PyAPI_FUNC(void) PyMem_SetAllocator(PyMemAllocatorDomain domain,
PyAPI_FUNC(void) PyMem_SetupDebugHooks(void);
#endif /* Py_LIMITED_API */
-#ifdef Py_BUILD_CORE
-/* Set the memory allocator of the specified domain to the default.
- Save the old allocator into *old_alloc if it's non-NULL.
- Return on success, or return -1 if the domain is unknown. */
-PyAPI_FUNC(int) _PyMem_SetDefaultAllocator(
- PyMemAllocatorDomain domain,
- PyMemAllocatorEx *old_alloc);
-#endif
-
-
/* bpo-35053: expose _Py_tracemalloc_config for performance:
_Py_NewReference() needs an efficient check to test if tracemalloc is
tracing.
diff --git a/Modules/main.c b/Modules/main.c
index 455178a..6a8aa05 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -2,6 +2,7 @@
#include "Python.h"
#include "osdefs.h"
+#include "internal/mem.h"
#include "internal/pygetopt.h"
#include "internal/pystate.h"
diff --git a/Objects/obmalloc.c b/Objects/obmalloc.c
index fbc9478..88ded83 100644
--- a/Objects/obmalloc.c
+++ b/Objects/obmalloc.c
@@ -1,4 +1,5 @@
#include "Python.h"
+#include "internal/mem.h"
#include <stdbool.h>
diff --git a/Python/coreconfig.c b/Python/coreconfig.c
index a82175e..81086f4 100644
--- a/Python/coreconfig.c
+++ b/Python/coreconfig.c
@@ -1,4 +1,5 @@
#include "Python.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#include <locale.h>
#ifdef HAVE_LANGINFO_H
diff --git a/Python/import.c b/Python/import.c
index e761f65..338cd30 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -5,6 +5,7 @@
#include "Python-ast.h"
#undef Yield /* undefine macro conflicting with winbase.h */
#include "internal/hash.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#include "errcode.h"
#include "marshal.h"
diff --git a/Python/pathconfig.c b/Python/pathconfig.c
index 4e0830f..efccb8d 100644
--- a/Python/pathconfig.c
+++ b/Python/pathconfig.c
@@ -2,6 +2,7 @@
#include "Python.h"
#include "osdefs.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#include <wchar.h>
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index f1579c7..78691a5 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -6,6 +6,7 @@
#undef Yield /* undefine macro conflicting with winbase.h */
#include "internal/context.h"
#include "internal/hamt.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#include "grammar.h"
#include "node.h"
diff --git a/Python/pystate.c b/Python/pystate.c
index d049811..98e954d 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -2,6 +2,7 @@
/* Thread and interpreter state structures and their interfaces */
#include "Python.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#define _PyThreadState_SET(value) \
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 9579eae..71414c9 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -15,6 +15,7 @@ Data members:
*/
#include "Python.h"
+#include "internal/mem.h"
#include "internal/pystate.h"
#include "code.h"
#include "frameobject.h"