diff options
Diffstat (limited to 'Python/symtable.c')
-rw-r--r-- | Python/symtable.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Python/symtable.c b/Python/symtable.c index 709918b27af..32d715197c5 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -136,6 +136,8 @@ ste_new(struct symtable *st, identifier name, _Py_block_ty block, ste->ste_needs_classdict = 0; ste->ste_annotation_block = NULL; + ste->ste_has_docstring = 0; + ste->ste_symbols = PyDict_New(); ste->ste_varnames = PyList_New(0); ste->ste_children = PyList_New(0); @@ -1841,6 +1843,10 @@ symtable_visit_stmt(struct symtable *st, stmt_ty s) return 0; } + if (_PyAST_GetDocString(s->v.FunctionDef.body)) { + new_ste->ste_has_docstring = 1; + } + if (!symtable_visit_annotations(st, s, s->v.FunctionDef.args, s->v.FunctionDef.returns, new_ste)) { Py_DECREF(new_ste); @@ -2168,6 +2174,10 @@ symtable_visit_stmt(struct symtable *st, stmt_ty s) return 0; } + if (_PyAST_GetDocString(s->v.AsyncFunctionDef.body)) { + new_ste->ste_has_docstring = 1; + } + if (!symtable_visit_annotations(st, s, s->v.AsyncFunctionDef.args, s->v.AsyncFunctionDef.returns, new_ste)) { Py_DECREF(new_ste); |