From 580bbdfe48327ec3c36bf33faeb9d0c53658dfb0 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Fri, 24 Sep 2021 14:04:34 +0200 Subject: [PATCH] MAINT: Fix LGTM.com warning Comparison result is always the same Comparison is always false because res <= 0. Indeed the for(;;) iteration may stop on 3 different breaks: res = -1; break; if (!res) { break; if (!res) { break; Therefore, after the loop, the only possible values for res are -1 and 0, and (res > 0) is always false. This originates in 37dc69c (#17029). --- numpy/core/src/multiarray/ctors.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/numpy/core/src/multiarray/ctors.c b/numpy/core/src/multiarray/ctors.c index 04be45f00263..9da75fb8a8c4 100644 --- a/numpy/core/src/multiarray/ctors.c +++ b/numpy/core/src/multiarray/ctors.c @@ -2717,7 +2717,7 @@ PyArray_CopyAsFlat(PyArrayObject *dst, PyArrayObject *src, NPY_ORDER order) /* If we exhausted the dst block, refresh it */ if (dst_count == count) { res = dst_iternext(dst_iter); - if (!res) { + if (res == 0) { break; } dst_count = *dst_countptr; @@ -2731,7 +2731,7 @@ PyArray_CopyAsFlat(PyArrayObject *dst, PyArrayObject *src, NPY_ORDER order) /* If we exhausted the src block, refresh it */ if (src_count == count) { res = src_iternext(src_iter); - if (!res) { + if (res == 0) { break; } src_count = *src_countptr; @@ -2748,10 +2748,6 @@ PyArray_CopyAsFlat(PyArrayObject *dst, PyArrayObject *src, NPY_ORDER order) NPY_cast_info_xfree(&cast_info); NpyIter_Deallocate(dst_iter); NpyIter_Deallocate(src_iter); - if (res > 0) { - /* The iteration stopped successfully, do not report an error */ - return 0; - } return res; }