summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorJelle Zijlstra <jelle.zijlstra@gmail.com>2024-05-28 18:03:33 (GMT)
committerGitHub <noreply@github.com>2024-05-28 18:03:33 (GMT)
commit6394a72e99b342d980297ec437ecafea92a044c4 (patch)
treedcf3ff8f0f88722a6318a28b56ad1496412f335b /Include
parent2b46253c5fdf57fd35eb471ad0035e61afe924a6 (diff)
downloadcpython-6394a72e99b342d980297ec437ecafea92a044c4.zip
cpython-6394a72e99b342d980297ec437ecafea92a044c4.tar.gz
cpython-6394a72e99b342d980297ec437ecafea92a044c4.tar.bz2
[3.13] gh-119311: Fix name mangling with PEP 695 generic classes (#119464) (#119643)
Fixes #119311. Fixes #119395. (cherry picked from commit a9a74da4a0ca0645f049e67b6434a95e30592c32)
Diffstat (limited to 'Include')
-rw-r--r--Include/internal/pycore_symtable.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/Include/internal/pycore_symtable.h b/Include/internal/pycore_symtable.h
index 16e89f8..ac6c499 100644
--- a/Include/internal/pycore_symtable.h
+++ b/Include/internal/pycore_symtable.h
@@ -81,6 +81,7 @@ typedef struct _symtable_entry {
PyObject *ste_varnames; /* list of function parameters */
PyObject *ste_children; /* list of child blocks */
PyObject *ste_directives;/* locations of global and nonlocal statements */
+ PyObject *ste_mangled_names; /* set of names for which mangling should be applied */
_Py_block_ty ste_type;
int ste_nested; /* true if block is nested */
unsigned ste_free : 1; /* true if block has free variables */
@@ -128,6 +129,7 @@ extern PySTEntryObject* _PySymtable_Lookup(struct symtable *, void *);
extern void _PySymtable_Free(struct symtable *);
+extern PyObject *_Py_MaybeMangle(PyObject *privateobj, PySTEntryObject *ste, PyObject *name);
extern PyObject* _Py_Mangle(PyObject *p, PyObject *name);
/* Flags for def-use information */