From 1e7b858575d0ad782939f86aae4a2fa1c29e9f14 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Thu, 29 Apr 2021 15:58:44 +1000 Subject: bpo-43892: Make match patterns explicit in the AST (GH-25585) Co-authored-by: Brandt Bucher --- Python/ast_unparse.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'Python/ast_unparse.c') diff --git a/Python/ast_unparse.c b/Python/ast_unparse.c index 5276b2fcd6..126e9047d5 100644 --- a/Python/ast_unparse.c +++ b/Python/ast_unparse.c @@ -3,6 +3,11 @@ #include // DBL_MAX_10_EXP #include +/* This limited unparser is used to convert annotations back to strings + * during compilation rather than being a full AST unparser. + * See ast.unparse for a full unparser (written in Python) + */ + static PyObject *_str_open_br; static PyObject *_str_dbl_open_br; static PyObject *_str_close_br; @@ -912,11 +917,11 @@ append_ast_expr(_PyUnicodeWriter *writer, expr_ty e, int level) return append_ast_tuple(writer, e, level); case NamedExpr_kind: return append_named_expr(writer, e, level); - default: - PyErr_SetString(PyExc_SystemError, - "unknown expression kind"); - return -1; + // No default so compiler emits a warning for unhandled cases } + PyErr_SetString(PyExc_SystemError, + "unknown expression kind"); + return -1; } static int -- cgit v1.2.1