Commit 384639f8 authored by Jeremy Hylton's avatar Jeremy Hylton

When running python -O, do not include blocks defined in asserts in

the symbol table pass.  These blocks were already ignored by the code
gen pass.  Both passes must visit the same set of blocks in the same
order.

Fixes SF buf 132820
parent 4779399e
......@@ -4496,6 +4496,17 @@ symtable_node(struct symtable *st, node *n)
break;
}
case assert_stmt:
if (Py_OptimizeFlag)
return;
if (NCH(n) == 2) {
n = CHILD(n, 1);
goto loop;
} else {
symtable_node(st, CHILD(n, 1));
n = CHILD(n, 3);
goto loop;
}
case except_clause:
if (NCH(n) == 4)
symtable_assign(st, CHILD(n, 3), 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment