bpo-40147: Fix a compiler warning on Windows in Python/compile.c (GH-19389)

Change the type of nkeywords to Py_ssize_t.
This commit is contained in:
Zackery Spytz 2020-04-06 00:47:47 -06:00 committed by GitHub
parent c63629e7c0
commit 08050e959e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 4 deletions

View File

@ -4050,14 +4050,15 @@ maybe_optimize_method_call(struct compiler *c, expr_ty e)
} }
static int static int
validate_keywords(struct compiler *c, asdl_seq* keywords) { validate_keywords(struct compiler *c, asdl_seq *keywords)
int nkeywords = asdl_seq_LEN(keywords); {
for (int i = 0; i < nkeywords; i++) { Py_ssize_t nkeywords = asdl_seq_LEN(keywords);
for (Py_ssize_t i = 0; i < nkeywords; i++) {
keyword_ty key = ((keyword_ty)asdl_seq_GET(keywords, i)); keyword_ty key = ((keyword_ty)asdl_seq_GET(keywords, i));
if (key->arg == NULL) { if (key->arg == NULL) {
continue; continue;
} }
for (int j = i+1; j < nkeywords; j++) { for (Py_ssize_t j = i + 1; j < nkeywords; j++) {
keyword_ty other = ((keyword_ty)asdl_seq_GET(keywords, j)); keyword_ty other = ((keyword_ty)asdl_seq_GET(keywords, j));
if (other->arg && !PyUnicode_Compare(key->arg, other->arg)) { if (other->arg && !PyUnicode_Compare(key->arg, other->arg)) {
PyObject *msg = PyUnicode_FromFormat("keyword argument repeated: %U", key->arg); PyObject *msg = PyUnicode_FromFormat("keyword argument repeated: %U", key->arg);