This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[COMMITTED PATCH] Suppress -Wformat-security in tst-error1.c.
- From: Roland McGrath <roland at hack dot frob dot com>
- To: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Thu, 11 Dec 2014 13:55:58 -0800 (PST)
- Subject: [COMMITTED PATCH] Suppress -Wformat-security in tst-error1.c.
- Authentication-results: sourceware.org; auth=none
Because the test has no comments, it was not clear to me if it was
specifically testing large format strings or just large output. If only
the latter, then using a "%s" format would be the better fix. But this
fixes the build without changing what the test tests.
With this, I have no more build errors in 'make check' for x86_64-linux-gnu
using the Ubuntu 14.04 gcc-4.8.2 that breaks command-line -Wno-format.
Thanks,
Roland
* misc/tst-error1.c (do_test): Ignore -Wformat-security for
generated error format strings.
--- a/misc/tst-error1.c
+++ b/misc/tst-error1.c
@@ -3,6 +3,7 @@
#include <stdio.h>
#include <string.h>
#include <wchar.h>
+#include <libc-internal.h>
static int
do_test (int argc, char *argv[])
@@ -16,8 +17,18 @@ do_test (int argc, char *argv[])
for (int i = 0; i < 1000; ++i)
memcpy (&buf[i * (sizeof (str) - 1)], str, sizeof (str));
error (0, 0, str);
+
+ /* We're testing a large format string here and need to generate it
+ to avoid this source file being ridiculous. So disable the warning
+ about a generated format string. */
+ DIAG_PUSH_NEEDS_COMMENT;
+ DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wformat-security");
+
error (0, 0, buf);
error (0, 0, buf);
+
+ DIAG_POP_NEEDS_COMMENT;
+
error (0, 0, str);
return 0;
}