From: David Aguilar <davvid@gmail•com>
To: git@vger•kernel.org
Cc: "Patrick Steinhardt" <ps@pks•im>,
"Junio C Hamano" <gitster@pobox•com>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail•com>,
"Jeff King" <peff@peff•net>,
"Phillip Wood" <phillip.wood@dunelm•org.uk>
Subject: [PATCH 4/6] xdiff: avoid signed vs. unsigned comparisons in xhistogram.c
Date: Tue, 11 Feb 2025 22:04:16 -0800 [thread overview]
Message-ID: <20250212060418.1645241-4-davvid@gmail.com> (raw)
In-Reply-To: <20250212060418.1645241-1-davvid@gmail.com>
The comparisons all involve unsigned variables. Cast the comparison
to unsigned to eliminate the mismatch.
Signed-off-by: David Aguilar <davvid@gmail•com>
---
xdiff/xhistogram.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/xdiff/xhistogram.c b/xdiff/xhistogram.c
index 3d2b190fa6..040d81e0bc 100644
--- a/xdiff/xhistogram.c
+++ b/xdiff/xhistogram.c
@@ -41,8 +41,6 @@
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#define DISABLE_SIGN_COMPARE_WARNINGS
-
#include "xinclude.h"
#define MAX_PTR UINT_MAX
@@ -108,7 +106,7 @@ static int scanA(struct histindex *index, int line1, int count1)
unsigned int chain_len;
struct record **rec_chain, *rec;
- for (ptr = LINE_END(1); line1 <= ptr; ptr--) {
+ for (ptr = LINE_END(1); (unsigned int)line1 <= ptr; ptr--) {
tbl_idx = TABLE_HASH(index, 1, ptr);
rec_chain = index->records + tbl_idx;
rec = *rec_chain;
@@ -183,14 +181,14 @@ static int try_lcs(struct histindex *index, struct region *lcs, int b_ptr,
be = bs;
rc = rec->cnt;
- while (line1 < as && line2 < bs
+ while ((unsigned int)line1 < as && (unsigned int)line2 < bs
&& CMP(index, 1, as - 1, 2, bs - 1)) {
as--;
bs--;
if (1 < rc)
rc = XDL_MIN(rc, CNT(index, as));
}
- while (ae < LINE_END(1) && be < LINE_END(2)
+ while (ae < (unsigned int)LINE_END(1) && be < (unsigned int)LINE_END(2)
&& CMP(index, 1, ae + 1, 2, be + 1)) {
ae++;
be++;
@@ -315,7 +313,7 @@ static int histogram_diff(xpparam_t const *xpp, xdfenv_t *env,
if (count1 <= 0 && count2 <= 0)
return 0;
- if (LINE_END(1) >= MAX_PTR)
+ if ((unsigned int)LINE_END(1) >= MAX_PTR)
return -1;
if (!count1) {
--
2.48.1.643.g61982db19f
next prev parent reply other threads:[~2025-02-12 6:04 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-12 6:04 [PATCH 1/6] xdiff: move sign comparison warning guard into each file David Aguilar
2025-02-12 6:04 ` [PATCH 2/6] xdiff: avoid signed vs. unsigned comparisons in xdiffi.c David Aguilar
2025-02-12 6:04 ` [PATCH 3/6] xdiff: avoid signed vs. unsigned comparisons in xemit.c David Aguilar
2025-02-12 6:04 ` David Aguilar [this message]
2025-02-12 6:04 ` [PATCH 5/6] xdiff: avoid signed vs. unsigned comparisons in xpatience.c David Aguilar
2025-02-12 6:04 ` [PATCH 6/6] xdiff: avoid signed vs. unsigned comparisons in xutils.c David Aguilar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250212060418.1645241-4-davvid@gmail.com \
--to=davvid@gmail$(echo .)com \
--cc=avarab@gmail$(echo .)com \
--cc=git@vger$(echo .)kernel.org \
--cc=gitster@pobox$(echo .)com \
--cc=peff@peff$(echo .)net \
--cc=phillip.wood@dunelm$(echo .)org.uk \
--cc=ps@pks$(echo .)im \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox