summaryrefslogtreecommitdiffstats
path: root/Python/ast_opt.c
diff options
context:
space:
mode:
authorJohn Belmonte <john@neggie.net>2022-04-11 14:34:18 (GMT)
committerGitHub <noreply@github.com>2022-04-11 14:34:18 (GMT)
commitb0b836b20cb56c225874a4a39ef895f89ab2970f (patch)
treeb333cd2e9ee95021e1fc3b45eee2da0b7ac0ee35 /Python/ast_opt.c
parentdd207a6ac52d4bd9a71cf178fc1d5c17a6f07aff (diff)
downloadcpython-b0b836b20cb56c225874a4a39ef895f89ab2970f.zip
cpython-b0b836b20cb56c225874a4a39ef895f89ab2970f.tar.gz
cpython-b0b836b20cb56c225874a4a39ef895f89ab2970f.tar.bz2
bpo-45995: add "z" format specifer to coerce negative 0 to zero (GH-30049)
Add "z" format specifier to coerce negative 0 to zero. See https://github.com/python/cpython/issues/90153 (originally https://bugs.python.org/issue45995) for discussion. This covers `str.format()` and f-strings. Old-style string interpolation is not supported. Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
Diffstat (limited to 'Python/ast_opt.c')
-rw-r--r--Python/ast_opt.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/Python/ast_opt.c b/Python/ast_opt.c
index 77ed29d..b1d807b 100644
--- a/Python/ast_opt.c
+++ b/Python/ast_opt.c
@@ -310,6 +310,7 @@ simple_format_arg_parse(PyObject *fmt, Py_ssize_t *ppos,
case ' ': *flags |= F_BLANK; continue;
case '#': *flags |= F_ALT; continue;
case '0': *flags |= F_ZERO; continue;
+ case 'z': *flags |= F_NO_NEG_0; continue;
}
break;
}