bpo-43244: Remove the pyarena.h header (GH-25007)

Remove the pyarena.h header file with functions:

* PyArena_New()
* PyArena_Free()
* PyArena_Malloc()
* PyArena_AddPyObject()

These functions were undocumented, excluded from the limited C API,
and were only used internally by the compiler.

Add pycore_pyarena.h header. Rename functions:

* PyArena_New() => _PyArena_New()
* PyArena_Free() => _PyArena_Free()
* PyArena_Malloc() => _PyArena_Malloc()
* PyArena_AddPyObject() => _PyArena_AddPyObject()
This commit is contained in:
Victor Stinner 2021-03-24 02:23:01 +01:00 committed by GitHub
parent 919d42d477
commit 8370e07e1e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
20 changed files with 215 additions and 187 deletions

View file

@ -828,21 +828,21 @@ builtin_compile_impl(PyObject *module, PyObject *source, PyObject *filename,
PyArena *arena;
mod_ty mod;
arena = PyArena_New();
arena = _PyArena_New();
if (arena == NULL)
goto error;
mod = PyAST_obj2mod(source, arena, compile_mode);
if (mod == NULL) {
PyArena_Free(arena);
_PyArena_Free(arena);
goto error;
}
if (!_PyAST_Validate(mod)) {
PyArena_Free(arena);
_PyArena_Free(arena);
goto error;
}
result = (PyObject*)_PyAST_Compile(mod, filename,
&cf, optimize, arena);
PyArena_Free(arena);
_PyArena_Free(arena);
}
goto finally;
}