Some flags are not publicly exported by symtablemodule.c
#120029
Closed
Description
Bug report
Bug description:
The symtablemodule.c
file does not export DEF_COMP_ITER
, DEF_TYPE_PARAM
and DEF_COMP_CELL
. Those flags seem to have been added after the original ones so they were probably missed/forgotten. Here is a MWE for DEF_TYPE_PARAM
:
>>> import symtable
>>> s = symtable.symtable("class A[T]: pass", "?", "exec")
>>> s.get_children()[0].lookup('T')
<symbol 'T': LOCAL, DEF_LOCAL>
By the way, there are tests that are missing for those cases in test_symtable
, so I can also add the corresponding test. I'm opening a PR now, but feel free to close it if you do not want to expose too many compiler flags (though, I fail to understand why you would do so).
CPython versions tested on:
CPython main branch
Operating systems tested on:
Linux