Sometimes we add C API (mainly macros) that should be private, but we don't use the _Py prefix. Usually it's due to similar existing names not using the prefix.
During the beta period, let's add _Py to the ones added in 3.15.
My annual scan noticed these:
Header guards:
Configure macros we chose a name for:
And for completeness, configure macros generated by autotools -- these are harder to change:
HAVE_CLEARENV
HAVE_PPOLL
HAVE_STATX
HAVE_STRUCT_STATX_STX_ATOMIC_WRITE_UNIT_MAX_OPT
HAVE_STRUCT_STATX_STX_ATOMIC_WRITE_UNIT_MIN
HAVE_STRUCT_STATX_STX_DIO_MEM_ALIGN
HAVE_STRUCT_STATX_STX_DIO_READ_OFFSET_ALIGN
HAVE_STRUCT_STATX_STX_MNT_ID
HAVE_STRUCT_STATX_STX_SUBVOL
HAVE_LINUX_CAN_ISOTP_H
HAVE_DECL_PR_SET_VMA_ANON_NAME
Linked PRs
Sometimes we add C API (mainly macros) that should be private, but we don't use the
_Pyprefix. Usually it's due to similar existing names not using the prefix.During the beta period, let's add
_Pyto the ones added in 3.15.My annual scan noticed these:
Header guards:
Py_CPYTHON_SLICEOBJECT_HinInclude/sliceobject.hPy_CPYTHON_STRUCTSEQ_HinInclude/structseq.hPy_SENTINELOBJECT_HinInclude/cpython/sentinelobject.hConfigure macros we chose a name for:
HAVE_EFFICIENT_BUILTIN_SHUFFLEVECTORHAVE_LIBGCC_EH_FRAME_REGISTRATIONHAVE_PR_SET_VMA_ANON_NAMEAnd for completeness, configure macros generated by autotools -- these are harder to change:
HAVE_CLEARENVHAVE_PPOLLHAVE_STATXHAVE_STRUCT_STATX_STX_ATOMIC_WRITE_UNIT_MAX_OPTHAVE_STRUCT_STATX_STX_ATOMIC_WRITE_UNIT_MINHAVE_STRUCT_STATX_STX_DIO_MEM_ALIGNHAVE_STRUCT_STATX_STX_DIO_READ_OFFSET_ALIGNHAVE_STRUCT_STATX_STX_MNT_IDHAVE_STRUCT_STATX_STX_SUBVOLHAVE_LINUX_CAN_ISOTP_HHAVE_DECL_PR_SET_VMA_ANON_NAMELinked PRs