diff options
-rw-r--r-- | Python/compile.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/Python/compile.c b/Python/compile.c index 93d5b6d..45bed39 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -483,7 +483,6 @@ com_addopname(c, op, n) int op; node *n; { - object *v; char *name; char buffer[1000]; /* XXX it is possible to write this code without the 1000 @@ -1868,13 +1867,14 @@ static object * get_docstring(n) node *n; { + int i; + switch (TYPE(n)) { case suite: if (NCH(n) == 1) return get_docstring(CHILD(n, 0)); else { - int i; for (i = 0; i < NCH(n); i++) { node *ch = CHILD(n, i); if (TYPE(ch) == stmt) @@ -1883,6 +1883,14 @@ get_docstring(n) } break; + case file_input: + for (i = 0; i < NCH(n); i++) { + node *ch = CHILD(n, i); + if (TYPE(ch) == stmt) + return get_docstring(ch); + } + break; + case stmt: case simple_stmt: case small_stmt: |