Issue #14687: Cleanup PyUnicode_Format()
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 95993e8..1d85d5b 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -13719,7 +13719,8 @@
PyObject *signobj = NULL, *fillobj = NULL;
fmtpos++;
- if (PyUnicode_READ(fmtkind, fmt, fmtpos) == '(') {
+ c = PyUnicode_READ(fmtkind, fmt, fmtpos);
+ if (c == '(') {
Py_ssize_t keystart;
Py_ssize_t keylen;
PyObject *key;
@@ -13765,7 +13766,8 @@
argidx = -2;
}
while (--fmtcnt >= 0) {
- switch (c = PyUnicode_READ(fmtkind, fmt, fmtpos++)) {
+ c = PyUnicode_READ(fmtkind, fmt, fmtpos++);
+ switch (c) {
case '-': flags |= F_LJUST; continue;
case '+': flags |= F_SIGN; continue;
case ' ': flags |= F_BLANK; continue;