bpo-37947: Avoid double-decrement in symtable recursion counting (GH-15593)


With `symtable_visit_expr` now correctly adjusting the recursion depth for named
expressions, `symtable_handle_namedexpr` should be leaving it alone.

Also adds a new check to `PySymtable_BuildObject` that raises `SystemError`
if a successful first symbol analysis pass fails to keep the stack depth
accounting clean.
(cherry picked from commit 06145230c833c3db5dab8858e11bcd550a37c57f)

Co-authored-by: Nick Coghlan <ncoghlan@gmail.com>
1 file changed