[glibc/azanella/clang] stdio: Suppress clang warnings for tst-vprintf-width-i18n.c

Adhemerval Zanella azanella@sourceware.org
Thu Sep 28 17:54:51 GMT 2023


https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=09c3225001d42e2cdd63207cafa92e22756d502b

commit 09c3225001d42e2cdd63207cafa92e22756d502b
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Fri Jun 3 10:43:42 2022 -0300

    stdio: Suppress clang warnings for tst-vprintf-width-i18n.c
    
    Clang issues the following warning:
    
      tst-vfprintf-width-i18n.c:51:34: error: invalid conversion specifier '1'
      [-Werror,-Wformat-invalid-specifier]
        TEST_COMPARE (sprintf (buf, "%I16d", 12345), 16);
                                     ~~^
    
    Since it does not how to handle %I.

Diff:
---
 stdio-common/tst-vfprintf-width-i18n.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/stdio-common/tst-vfprintf-width-i18n.c b/stdio-common/tst-vfprintf-width-i18n.c
index 6d5a5f8a59..b9c0a16c63 100644
--- a/stdio-common/tst-vfprintf-width-i18n.c
+++ b/stdio-common/tst-vfprintf-width-i18n.c
@@ -23,6 +23,7 @@
 #include <stdio.h>
 #include <support/support.h>
 #include <support/check.h>
+#include <libc-diag.h>
 
 static int
 do_test (void)
@@ -48,6 +49,9 @@ do_test (void)
   TEST_COMPARE_STRING (buf, " INR12,345.67");
 
   /* Translated.  */
+  /* clang does not know about the GNU extension 'I'.  */
+  DIAG_PUSH_NEEDS_COMMENT_CLANG;
+  DIAG_IGNORE_NEEDS_COMMENT_CLANG (14, "-Wformat-invalid-specifier");
   TEST_COMPARE (sprintf (buf, "%I16d", 12345), 16);
   TEST_COMPARE_STRING (buf, " १२३४५");
   TEST_COMPARE (sprintf (buf, "%I12.2f", 12345.67), 26);
@@ -58,6 +62,7 @@ do_test (void)
   TEST_COMPARE_STRING (buf, " १२,३४५");
   TEST_COMPARE (sprintf (buf, "%'I12.2f", 12345.67), 26);
   TEST_COMPARE_STRING (buf, "   १२,३४५.६७");
+  DIAG_POP_NEEDS_COMMENT_CLANG;
 
   xsetlocale (LC_ALL, "ps_AF.UTF-8");
 
@@ -78,6 +83,8 @@ do_test (void)
   TEST_COMPARE_STRING (buf, "  12٬346 AFN"); /* Counts bytes.   */
 
   /* Translated.  */
+  DIAG_PUSH_NEEDS_COMMENT_CLANG;
+  DIAG_IGNORE_NEEDS_COMMENT_CLANG (14, "-Wformat-invalid-specifier");
   TEST_COMPARE (sprintf (buf, "%I11d", 12345), 11);
   TEST_COMPARE_STRING (buf, " ١٢٣۴٥");
   TEST_COMPARE (sprintf (buf, "%I12.2f", 12345.67), 20);
@@ -88,6 +95,7 @@ do_test (void)
   TEST_COMPARE_STRING (buf, " ١٢٬٣۴٥");
   TEST_COMPARE (sprintf (buf, "%'I12.2f", 12345.67), 21);
   TEST_COMPARE_STRING (buf, "   ١٢٬٣۴٥٫٦٧");
+  DIAG_POP_NEEDS_COMMENT_CLANG;
 
   return 0;
 }


More information about the Glibc-cvs mailing list