]> Savannah Git Hosting - gnulib.git/commitdiff
tests: pacify GCC 5.1's stricter printf checking
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 27 Apr 2015 08:23:29 +0000 (01:23 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 27 Apr 2015 08:24:40 +0000 (01:24 -0700)
* tests/test-dirname.c (main):
* tests/test-getaddrinfo.c (simple):
* tests/test-getlogin.c (main):
* tests/test-getndelim2.c (main):
* tests/test-inttostr.c (CK):
* tests/test-md5.c (main):
* tests/test-read-file.c (main):
* tests/test-sha1.c (main):
Fix mismatches between printf format and value signedness.
* tests/test-inttostr.c (FMT, CAST_VAL, V_min, V_max):
Remove, as CAST_VAL always returned a value of type uintmax_t.

ChangeLog
tests/test-dirname.c
tests/test-getaddrinfo.c
tests/test-getlogin.c
tests/test-getndelim2.c
tests/test-inttostr.c
tests/test-md5.c
tests/test-read-file.c
tests/test-sha1.c

index 350553a3c2e2cff863d6a2e07fac798d8f3d3d6b..fcc638311ed0b9a1c156dd857affb676ef35dce2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,18 @@
 2015-04-27  Paul Eggert  <eggert@cs.ucla.edu>
 
+       tests: pacify GCC 5.1's stricter printf checking
+       * tests/test-dirname.c (main):
+       * tests/test-getaddrinfo.c (simple):
+       * tests/test-getlogin.c (main):
+       * tests/test-getndelim2.c (main):
+       * tests/test-inttostr.c (CK):
+       * tests/test-md5.c (main):
+       * tests/test-read-file.c (main):
+       * tests/test-sha1.c (main):
+       Fix mismatches between printf format and value signedness.
+       * tests/test-inttostr.c (FMT, CAST_VAL, V_min, V_max):
+       Remove, as CAST_VAL always returned a value of type uintmax_t.
+
        fts: port to GCC 5.1 with --enable-gcc-warnings
        Without this fix, GCC 5.1 (correctly) warns about a subscript
        error on the fts_name component of FTSENT.  It's actually a
index b7f268219ff35f06477599945ad8959202d518f9..49a94ea951234fdd92a711a9e32a7cfbc120ec28 100644 (file)
@@ -150,7 +150,7 @@ main (void)
         {
           ok = false;
           printf ("dir_name '%s': got '%s' len %d,"
-                  " expected '%s' len %ld\n",
+                  " expected '%s' len %lu\n",
                   t->name, dir, dirlen,
                   t->dir, (unsigned long) strlen (t->dir));
         }
@@ -167,7 +167,7 @@ main (void)
         {
           ok = false;
           printf ("base_name '%s': got '%s' len %d,"
-                  " expected '%s' len %ld\n",
+                  " expected '%s' len %lu\n",
                   t->name, base, baselen,
                   t->base, (unsigned long) strlen (t->base));
         }
index 1bb89eeda0ee64bd96d9c82a3f7dc856a08f3ffa..0cfb1f1a1c49b102ee51cdd8db552c3712e865b7 100644 (file)
@@ -116,11 +116,11 @@ simple (char const *host, char const *service)
     {
       void *ai_addr = ai->ai_addr;
       struct sockaddr_in *sock_addr = ai_addr;
-      dbgprintf ("\tflags %x\n", ai->ai_flags);
-      dbgprintf ("\tfamily %x\n", ai->ai_family);
-      dbgprintf ("\tsocktype %x\n", ai->ai_socktype);
-      dbgprintf ("\tprotocol %x\n", ai->ai_protocol);
-      dbgprintf ("\taddrlen %ld: ", (unsigned long) ai->ai_addrlen);
+      dbgprintf ("\tflags %x\n", ai->ai_flags + 0u);
+      dbgprintf ("\tfamily %x\n", ai->ai_family + 0u);
+      dbgprintf ("\tsocktype %x\n", ai->ai_socktype + 0u);
+      dbgprintf ("\tprotocol %x\n", ai->ai_protocol + 0u);
+      dbgprintf ("\taddrlen %lu: ", (unsigned long) ai->ai_addrlen);
       dbgprintf ("\tFound %s\n",
                  inet_ntop (ai->ai_family,
                             &sock_addr->sin_addr,
index 5da18e5f9cd79ab3eaf8d7e1d91591e710b84f79..3f1aeb08b843fa12ecba8900b0e021aed8b54976 100644 (file)
@@ -84,9 +84,9 @@ main (void)
     pwd = getpwuid (stat_buf.st_uid);
     if (! pwd)
       {
-         fprintf (stderr, "Skipping test: no name found for uid %d\n",
-                  stat_buf.st_uid);
-         return 77;
+        long int uid = stat_buf.st_uid;
+        fprintf (stderr, "Skipping test: no name found for uid %ld\n", uid);
+        return 77;
       }
 
     ASSERT (strcmp (pwd->pw_name, buf) == 0);
index 2fd75191791a3985606fedd6bf772173ab55bc2a..3ffbff9b0fb358993a2e2beb6a61071144fa7593 100644 (file)
@@ -103,7 +103,7 @@ main (void)
   {
     int i;
     for (i = 0; i < 16; i++)
-      fprintf (f, "%500x%c", i, i % 2 ? '\n' : '\r');
+      fprintf (f, "%500x%c", i + 0u, i % 2 ? '\n' : '\r');
   }
   rewind (f);
   {
index 981b224ac0cf6f2a9b4ecb1d5803f67c00934127..cb71b2b81e935edb783ad72042eab5c6f42fc96d 100644 (file)
 #include "macros.h"
 
 #define STREQ(a, b) (strcmp (a, b) == 0)
-#define FMT(T) (TYPE_SIGNED (T) ? "%jd" : "%ju")
-#define CAST_VAL(T,V) (TYPE_SIGNED (T) ? (intmax_t) (V) : (uintmax_t) (V))
-#define V_min(T) (CAST_VAL (T, TYPE_MINIMUM (T)))
-#define V_max(T) (CAST_VAL (T, TYPE_MAXIMUM (T)))
 #define IS_TIGHT(T) (_GL_SIGNED_TYPE_OR_EXPR (T) == TYPE_SIGNED (T))
 #define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9)
 
       char const *p;                                                    \
       ASSERT (buf);                                                     \
       *buf = '\0';                                                      \
-      ASSERT (snprintf (ref, sizeof ref, FMT (T), V_min (T)) < sizeof ref); \
+      ASSERT                                                            \
+        ((TYPE_SIGNED (T)                                               \
+          ? snprintf (ref, sizeof ref, "%jd", (intmax_t) TYPE_MINIMUM (T)) \
+          : snprintf (ref, sizeof ref, "%ju", (uintmax_t) TYPE_MINIMUM (T))) \
+         < sizeof ref);                                                 \
       ASSERT (STREQ ((p = Fn (TYPE_MINIMUM (T), buf)), ref));           \
       /* Ensure that INT_BUFSIZE_BOUND is tight for signed types.  */   \
       ASSERT (! TYPE_SIGNED (T) || (p == buf && *p == '-'));            \
-      ASSERT (snprintf (ref, sizeof ref, FMT (T), V_max (T)) < sizeof ref); \
+      ASSERT                                                            \
+        ((TYPE_SIGNED (T)                                               \
+          ? snprintf (ref, sizeof ref, "%jd", (intmax_t) TYPE_MAXIMUM (T)) \
+          : snprintf (ref, sizeof ref, "%ju", (uintmax_t) TYPE_MAXIMUM (T))) \
+         < sizeof ref);                                                 \
       ASSERT (STREQ ((p = Fn (TYPE_MAXIMUM (T), buf)), ref));           \
       /* For unsigned types, the bound is not always tight.  */         \
       ASSERT (! IS_TIGHT (T) || TYPE_SIGNED (T)                         \
index 880621bdc0f6688a93cf5ee86197a6e39eeeb578..68278b1b9c46f4b530e7999ca71bfacf45203073 100644 (file)
@@ -42,10 +42,10 @@ main (void)
       size_t i;
       printf ("expected:\n");
       for (i = 0; i < MD5_DIGEST_SIZE; i++)
-        printf ("%02x ", out1[i] & 0xFF);
+        printf ("%02x ", out1[i] & 0xFFu);
       printf ("\ncomputed:\n");
       for (i = 0; i < MD5_DIGEST_SIZE; i++)
-        printf ("%02x ", buf[i] & 0xFF);
+        printf ("%02x ", buf[i] & 0xFFu);
       printf ("\n");
       return 1;
     }
@@ -55,10 +55,10 @@ main (void)
       size_t i;
       printf ("expected:\n");
       for (i = 0; i < MD5_DIGEST_SIZE; i++)
-        printf ("%02x ", out2[i] & 0xFF);
+        printf ("%02x ", out2[i] & 0xFFu);
       printf ("\ncomputed:\n");
       for (i = 0; i < MD5_DIGEST_SIZE; i++)
-        printf ("%02x ", buf[i] & 0xFF);
+        printf ("%02x ", buf[i] & 0xFFu);
       printf ("\n");
       return 1;
     }
index cfa52371ab3f7afd6f1945c5d090ad8af051f5b2..f8b160f58c08cd31f3e496fa573d8c8c5f458ec9 100644 (file)
@@ -57,7 +57,8 @@ main (void)
               /* FILE1 is a regular file or a symlink to a regular file.  */
               if (len != statbuf.st_size)
                 {
-                  fprintf (stderr, "Read %ld from %s...\n", (unsigned long) len, FILE1);
+                  fprintf (stderr, "Read %lu from %s...\n",
+                           (unsigned long) len, FILE1);
                   err = 1;
                 }
             }
@@ -98,7 +99,8 @@ main (void)
              is not a regular file.  */
           if (len != 0)
             {
-              fprintf (stderr, "Read %ld from %s...\n", (unsigned long) len, FILE2);
+              fprintf (stderr, "Read %lu from %s...\n",
+                       (unsigned long) len, FILE2);
               err = 1;
             }
           free (out);
index ef4e576af30efb2736932b0c8d468135a7069448..6f2b608eb05534687246def8cb1f10b968b0c991 100644 (file)
@@ -36,10 +36,10 @@ main (void)
       size_t i;
       printf ("expected:\n");
       for (i = 0; i < SHA1_DIGEST_SIZE; i++)
-        printf ("%02x ", out1[i] & 0xFF);
+        printf ("%02x ", out1[i] & 0xFFu);
       printf ("\ncomputed:\n");
       for (i = 0; i < SHA1_DIGEST_SIZE; i++)
-        printf ("%02x ", buf[i] & 0xFF);
+        printf ("%02x ", buf[i] & 0xFFu);
       printf ("\n");
       return 1;
     }