diff mbox series

[v3,15/16] sysdeps/ieee754/ldbl-128ibm-compat: Fix warn unused result

Message ID 20230628084246.778302-16-fberat@redhat.com
State New
Headers show
Series Allow glibc to be built with _FORTIFY_SOURCE | expand

Commit Message

Frederic Berat June 28, 2023, 8:42 a.m. UTC
Return value from *scanf and *asprintf routines are now properly checked
in test-scanf-ldbl-compat-template.c and test-printf-ldbl-compat.c.
---
 .../test-printf-ldbl-compat.c                 | 10 +++++----
 .../test-scanf-ldbl-compat-template.c         | 21 ++++++++++---------
 2 files changed, 17 insertions(+), 14 deletions(-)

Comments

Siddhesh Poyarekar June 30, 2023, 3:33 p.m. UTC | #1
On 2023-06-28 04:42, Frédéric Bérat wrote:
> Return value from *scanf and *asprintf routines are now properly checked
> in test-scanf-ldbl-compat-template.c and test-printf-ldbl-compat.c.
> ---
>   .../test-printf-ldbl-compat.c                 | 10 +++++----
>   .../test-scanf-ldbl-compat-template.c         | 21 ++++++++++---------
>   2 files changed, 17 insertions(+), 14 deletions(-)

LGTM.

Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>

> 
> diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c b/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
> index 3c759e1427..be37af7c31 100644
> --- a/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
> +++ b/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
> @@ -30,12 +30,13 @@ do_test_call_varg (FILE *stream, const char *format, ...)
>     char *buffer = NULL;
>     char string[128];
>     va_list args;
> +  int ret;
>   
>     printf ("%15s", "vasprintf: ");
>     va_start (args, format);
> -  vasprintf (&buffer, format, args);
> +  ret = vasprintf (&buffer, format, args);
>     va_end (args);
> -  if (buffer == NULL)
> +  if (ret == -1 || buffer == NULL)
>       printf ("Error using vasprintf\n");
>     else
>       {
> @@ -82,10 +83,11 @@ do_test_call_rarg (FILE *stream, const char *format, long double ld, double d)
>   {
>     char *buffer = NULL;
>     char string[128];
> +  int ret;
>   
>     printf ("%15s", "asprintf: ");
> -  asprintf (&buffer, format, ld, d);
> -  if (buffer == NULL)
> +  ret = asprintf (&buffer, format, ld, d);
> +  if (ret == -1 || buffer == NULL)
>       printf ("Error using asprintf\n");
>     else
>       {
> diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c b/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
> index e8da3a67f0..776c12dd16 100644
> --- a/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
> +++ b/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
> @@ -37,10 +37,10 @@
>     ldptr = va_arg (args, long double *);					\
>     fptr = va_arg (args, float *);					\
>     va_end (args);							\
> -  if (*ldptr == -1 && *fptr == -2)					\
> +  if (*ldptr == -1 && *fptr == -2 && ret == 2)				\
>       printf ("OK");							\
>     else									\
> -    printf ("ERROR (%Lf %f)", *ldptr, *fptr);				\
> +    printf ("ERROR (%Lf %f %d)", *ldptr, *fptr, ret);			\
>     printf ("\n");
>   
>   #define CLEAR_VALUE							\
> @@ -48,10 +48,10 @@
>     f = 0;
>   
>   #define CHECK_VALUE							\
> -  if (ld == -1 && f == -2)						\
> +  if (ld == -1 && f == -2 && ret == 2)					\
>       printf ("OK");							\
>     else									\
> -    printf ("ERROR (%Lf %f)", ld, f);					\
> +    printf ("ERROR (%Lf %f %d)", ld, f, ret);				\
>     printf ("\n");
>   
>   static void
> @@ -62,40 +62,41 @@ do_test_call (FILE *stream, CHAR *string, const CHAR *format, ...)
>     float *fptr;
>     long double *ldptr;
>     va_list args;
> +  int ret;
>   
>     CLEAR_VALUE
>     printf ("fscanf: ");
> -  FSCANF (stream, format, &ld, &f);
> +  ret = FSCANF (stream, format, &ld, &f);
>     CHECK_VALUE
>   
>     CLEAR_VALUE
>     printf ("scanf: ");
> -  SCANF (format, &ld, &f);
> +  ret = SCANF (format, &ld, &f);
>     CHECK_VALUE
>   
>     CLEAR_VALUE
>     printf ("sscanf: ");
> -  SSCANF (string, format, &ld, &f);
> +  ret = SSCANF (string, format, &ld, &f);
>     CHECK_VALUE
>   
>     CLEAR_VARGS
>     printf ("vfscanf: ");
>     va_start (args, format);
> -  VFSCANF (stream, format, args);
> +  ret = VFSCANF (stream, format, args);
>     va_end (args);
>     CHECK_VARGS
>   
>     CLEAR_VARGS
>     printf ("vscanf: ");
>     va_start (args, format);
> -  VSCANF (format, args);
> +  ret = VSCANF (format, args);
>     va_end (args);
>     CHECK_VARGS
>   
>     CLEAR_VARGS
>     printf ("vsscanf: ");
>     va_start (args, format);
> -  VSSCANF (string, format, args);
> +  ret = VSSCANF (string, format, args);
>     va_end (args);
>     CHECK_VARGS
>   }
diff mbox series

Patch

diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c b/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
index 3c759e1427..be37af7c31 100644
--- a/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
+++ b/sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c
@@ -30,12 +30,13 @@  do_test_call_varg (FILE *stream, const char *format, ...)
   char *buffer = NULL;
   char string[128];
   va_list args;
+  int ret;
 
   printf ("%15s", "vasprintf: ");
   va_start (args, format);
-  vasprintf (&buffer, format, args);
+  ret = vasprintf (&buffer, format, args);
   va_end (args);
-  if (buffer == NULL)
+  if (ret == -1 || buffer == NULL)
     printf ("Error using vasprintf\n");
   else
     {
@@ -82,10 +83,11 @@  do_test_call_rarg (FILE *stream, const char *format, long double ld, double d)
 {
   char *buffer = NULL;
   char string[128];
+  int ret;
 
   printf ("%15s", "asprintf: ");
-  asprintf (&buffer, format, ld, d);
-  if (buffer == NULL)
+  ret = asprintf (&buffer, format, ld, d);
+  if (ret == -1 || buffer == NULL)
     printf ("Error using asprintf\n");
   else
     {
diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c b/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
index e8da3a67f0..776c12dd16 100644
--- a/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
+++ b/sysdeps/ieee754/ldbl-128ibm-compat/test-scanf-ldbl-compat-template.c
@@ -37,10 +37,10 @@ 
   ldptr = va_arg (args, long double *);					\
   fptr = va_arg (args, float *);					\
   va_end (args);							\
-  if (*ldptr == -1 && *fptr == -2)					\
+  if (*ldptr == -1 && *fptr == -2 && ret == 2)				\
     printf ("OK");							\
   else									\
-    printf ("ERROR (%Lf %f)", *ldptr, *fptr);				\
+    printf ("ERROR (%Lf %f %d)", *ldptr, *fptr, ret);			\
   printf ("\n");
 
 #define CLEAR_VALUE							\
@@ -48,10 +48,10 @@ 
   f = 0;
 
 #define CHECK_VALUE							\
-  if (ld == -1 && f == -2)						\
+  if (ld == -1 && f == -2 && ret == 2)					\
     printf ("OK");							\
   else									\
-    printf ("ERROR (%Lf %f)", ld, f);					\
+    printf ("ERROR (%Lf %f %d)", ld, f, ret);				\
   printf ("\n");
 
 static void
@@ -62,40 +62,41 @@  do_test_call (FILE *stream, CHAR *string, const CHAR *format, ...)
   float *fptr;
   long double *ldptr;
   va_list args;
+  int ret;
 
   CLEAR_VALUE
   printf ("fscanf: ");
-  FSCANF (stream, format, &ld, &f);
+  ret = FSCANF (stream, format, &ld, &f);
   CHECK_VALUE
 
   CLEAR_VALUE
   printf ("scanf: ");
-  SCANF (format, &ld, &f);
+  ret = SCANF (format, &ld, &f);
   CHECK_VALUE
 
   CLEAR_VALUE
   printf ("sscanf: ");
-  SSCANF (string, format, &ld, &f);
+  ret = SSCANF (string, format, &ld, &f);
   CHECK_VALUE
 
   CLEAR_VARGS
   printf ("vfscanf: ");
   va_start (args, format);
-  VFSCANF (stream, format, args);
+  ret = VFSCANF (stream, format, args);
   va_end (args);
   CHECK_VARGS
 
   CLEAR_VARGS
   printf ("vscanf: ");
   va_start (args, format);
-  VSCANF (format, args);
+  ret = VSCANF (format, args);
   va_end (args);
   CHECK_VARGS
 
   CLEAR_VARGS
   printf ("vsscanf: ");
   va_start (args, format);
-  VSSCANF (string, format, args);
+  ret = VSSCANF (string, format, args);
   va_end (args);
   CHECK_VARGS
 }