]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
maint: use _GL_CMP instead of handwriting three-valued comparisons
authorCollin Funk <collin.funk1@gmail.com>
Sun, 22 Jun 2025 04:50:27 +0000 (21:50 -0700)
committerPádraig Brady <P@draigBrady.com>
Sun, 22 Jun 2025 10:33:11 +0000 (11:33 +0100)
* src/comm.c (compare_files): Use _GL_CMP.
* src/join.c (keycmp): Likewise.
* src/ls.c (off_cmp): Likewise.
* src/ptx.c (compare_words, compare_occurs): Likewise.
* src/set-fields.c (compare_ranges): Likewise.
* src/sort.c (compare_random, diff_reversed, compare): Likewise.

src/comm.c
src/join.c
src/ls.c
src/ptx.c
src/set-fields.c
src/sort.c

index 92be28528cd05fb70a0de6d077783f568467153c..dd61dd9c8023d36e833c62580f22259392847344 100644 (file)
@@ -318,8 +318,7 @@ compare_files (char **infiles)
               size_t len = MIN (thisline[0]->length, thisline[1]->length) - 1;
               order = memcmp (thisline[0]->buffer, thisline[1]->buffer, len);
               if (order == 0)
-                order = ((thisline[0]->length > thisline[1]->length)
-                         - (thisline[0]->length < thisline[1]->length));
+                order = _GL_CMP (thisline[0]->length, thisline[1]->length);
             }
         }
 
index 93ffdafc13de60f3cc94b37ead47f3930956adc3..faf402eeab50fb87cb63e6079b9ddbdd83d4db7c 100644 (file)
@@ -384,7 +384,7 @@ keycmp (struct line const *line1, struct line const *line2,
 
   if (diff)
     return diff;
-  return (len1 > len2) - (len1 < len2);
+  return _GL_CMP (len1, len2);
 }
 
 /* Check that successive input lines PREV and CURRENT from input file
index bbc1bb2fd8a5c1a358101c0bd0bc28dc5d73e8dc..e84e0facff9a46344452ccd2cf80a04613afd11b 100644 (file)
--- a/src/ls.c
+++ b/src/ls.c
@@ -3898,7 +3898,7 @@ cmp_btime (struct fileinfo const *a, struct fileinfo const *b,
 static int
 off_cmp (off_t a, off_t b)
 {
-  return (a > b) - (a < b);
+  return _GL_CMP (a, b);
 }
 
 static int
index 8c42db2d24b720f126e8ff13a72b57944a5631a3..006eb66afec29cbba3fe6d28729d13dc66b04dc2 100644 (file)
--- a/src/ptx.c
+++ b/src/ptx.c
@@ -558,7 +558,7 @@ compare_words (const void *void_first, const void *void_second)
         }
     }
 
-  return (first->size > second->size) - (first->size < second->size);
+  return _GL_CMP (first->size, second->size);
 }
 
 /*-----------------------------------------------------------------------.
@@ -576,8 +576,7 @@ compare_occurs (const void *void_first, const void *void_second)
 
   value = compare_words (&first->key, &second->key);
   return (value ? value
-          : ((first->key.start > second->key.start)
-             - (first->key.start < second->key.start)));
+          : _GL_CMP (first->key.start, second->key.start));
 #undef first
 #undef second
 }
index 0063ed844464f99683416fa7e632d06f286e2b06..31547e4e9a0cf071d6bcbf89f8cb92036ef8a35d 100644 (file)
@@ -61,7 +61,7 @@ static int
 compare_ranges (const void *a, const void *b)
 {
   struct field_range_pair const *ap = a, *bp = b;
-  return (ap->lo > bp->lo) - (ap->lo < bp->lo);
+  return _GL_CMP (ap->lo, bp->lo);
 }
 
 /* Reallocate Range Pair entries, with corresponding
index 7af1a25121c14dabc13458f3c168f71471ddd338..4a1fdfd3751e1c309d343566010007656f769b95 100644 (file)
@@ -2295,7 +2295,7 @@ compare_random (char *restrict texta, size_t lena,
             {
               xfrm_diff = memcmp (buf, buf + sizea, MIN (sizea, sizeb));
               if (! xfrm_diff)
-                xfrm_diff = (sizea > sizeb) - (sizea < sizeb);
+                xfrm_diff = _GL_CMP (sizea, sizeb);
             }
         }
     }
@@ -2312,7 +2312,7 @@ compare_random (char *restrict texta, size_t lena,
         {
           xfrm_diff = memcmp (texta, textb, MIN (lena, lenb));
           if (! xfrm_diff)
-            xfrm_diff = (lena > lenb) - (lena < lenb);
+            xfrm_diff = _GL_CMP (lena, lenb);
         }
 
       diff = xfrm_diff;
@@ -2678,7 +2678,7 @@ key_warnings (struct keyfield const *gkey, bool gkey_only)
 static int
 diff_reversed (int diff, bool reversed)
 {
-  return reversed ? (diff < 0) - (diff > 0) : diff;
+  return reversed ? _GL_CMP (0, diff) : diff;
 }
 
 /* Compare two lines A and B trying every key in sequence until there
@@ -2842,7 +2842,7 @@ keycompare (struct line const *a, struct line const *b)
             diff = memcmp (texta, textb, lenmin);
 
           if (! diff)
-            diff = (lena > lenb) - (lena < lenb);
+            diff = _GL_CMP (lena, lenb);
         }
 
       if (diff)
@@ -2915,7 +2915,7 @@ compare (struct line const *a, struct line const *b)
     {
       diff = memcmp (a->text, b->text, MIN (alen, blen));
       if (!diff)
-        diff = (alen > blen) - (alen < blen);
+        diff = _GL_CMP (alen, blen);
     }
 
   return diff_reversed (diff, reverse);