mirror of git://sourceware.org/git/glibc.git
string: Fix tester with fortify enabled
If fortify is enabled, the truncated output warning is issued by
the wrapper itself:
In function ‘strncpy’,
inlined from ‘test_strncpy’ at tester.c:505:10:
../string/bits/string_fortified.h:95:10: error: ‘__builtin_strncpy’
destination unchanged after copying no bytes from a string of length 3
[-Werror=stringop-truncation]
95 | return __builtin___strncpy_chk (__dest, __src, __len,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
96 | __glibc_objsize (__dest));
| ~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/bits/string_fortified.h:1,
from ../string/string.h:548,
from ../include/string.h:60,
from tester.c:33,
from inl-tester.c:6:
In function ‘strncpy’,
inlined from ‘test_strncpy’ at tester.c:505:10:
Checked on x86_64-linux-gnu.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
parent
85ac7edcdf
commit
c2dc8ab6a5
|
|
@ -26,6 +26,14 @@
|
|||
#undef __USE_STRING_INLINES
|
||||
#endif
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#include <libc-diag.h>
|
||||
|
||||
/* Triggered by strncpy fortify wrapper when it is enabled. */
|
||||
#if __GNUC_PREREQ (8, 0)
|
||||
DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-truncation");
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
|
|
@ -33,7 +41,6 @@
|
|||
#include <string.h>
|
||||
#include <strings.h>
|
||||
#include <fcntl.h>
|
||||
#include <libc-diag.h>
|
||||
|
||||
/* This file tests a range of corner cases of string functions,
|
||||
including cases where truncation occurs or where sizes specified
|
||||
|
|
@ -45,9 +52,6 @@ DIAG_IGNORE_NEEDS_COMMENT (5.0, "-Wmemset-transposed-args");
|
|||
DIAG_IGNORE_NEEDS_COMMENT (9, "-Wrestrict");
|
||||
DIAG_IGNORE_NEEDS_COMMENT (7, "-Wstringop-overflow=");
|
||||
#endif
|
||||
#if __GNUC_PREREQ (8, 0)
|
||||
DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-truncation");
|
||||
#endif
|
||||
#if __GNUC_PREREQ (11, 0)
|
||||
DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread");
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue