summaryrefslogtreecommitdiff
path: root/Include/symtable.h
diff options
context:
space:
mode:
authorEli Bendersky <eliben@gmail.com>2013-05-25 05:27:10 -0700
committerEli Bendersky <eliben@gmail.com>2013-05-25 05:27:10 -0700
commit43571906e334ddae42f9cbda3c1e6a3f8dd864be (patch)
tree99b8a08094c89c2bc18ae8d6b10b13dc14a0cac2 /Include/symtable.h
parente48b606a8a24941cdf36eddc42f49bc83d277728 (diff)
parent0ee619afec42bdc371fd3c54d8ab7f4f90193b0f (diff)
downloadcpython-43571906e334ddae42f9cbda3c1e6a3f8dd864be.tar.gz
Issue #13612: handle unknown encodings without a buffer overflow.
This affects pyexpat and _elementtree. PyExpat_CAPI now exposes a new function - DefaultUnknownEncodingHandler. Based on a patch by Serhiy Storchaka.
Diffstat (limited to 'Include/symtable.h')
-rw-r--r--Include/symtable.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/Include/symtable.h b/Include/symtable.h
index 6ed3a2b06c..44535d0d95 100644
--- a/Include/symtable.h
+++ b/Include/symtable.h
@@ -41,6 +41,7 @@ typedef struct _symtable_entry {
PyObject *ste_name; /* string: name of current block */
PyObject *ste_varnames; /* list of function parameters */
PyObject *ste_children; /* list of child blocks */
+ PyObject *ste_directives;/* locations of global and nonlocal statements */
_Py_block_ty ste_type; /* module, class, or function */
int ste_unoptimized; /* false if namespace is optimized */
int ste_nested; /* true if block is nested */
@@ -52,6 +53,9 @@ typedef struct _symtable_entry {
unsigned ste_varkeywords : 1; /* true if block has varkeywords */
unsigned ste_returns_value : 1; /* true if namespace uses return with
an argument */
+ unsigned ste_needs_class_closure : 1; /* for class scopes, true if a
+ closure over __class__
+ should be created */
int ste_lineno; /* first line of block */
int ste_col_offset; /* offset of first line of block */
int ste_opt_lineno; /* lineno of last exec or import * */