PR preprocessor/79214 - -Wno-system-header defeats strncat buffer overflow warnings
authorMartin Sebor <msebor@redhat.com>
Thu, 4 May 2017 20:54:43 +0000 (20:54 +0000)
committerMartin Sebor <msebor@gcc.gnu.org>
Thu, 4 May 2017 20:54:43 +0000 (14:54 -0600)
commite50d56a502c1140502e498942a739953e85edf1f
tree052b919e3dc3dfdaf0c430202ec00ab03681aa7a
parent0f05d90543023e62bb272e6d97d0de3ddc32ab30
PR preprocessor/79214 - -Wno-system-header defeats strncat buffer overflow warnings

PR preprocessor/79214 -  -Wno-system-header defeats strncat buffer overflow warnings
PR middle-end/79222 - missing -Wstringop-overflow= on a stpcpy overflow
PR middle-end/79223 - missing -Wstringop-overflow on a memmove overflow

gcc/ChangeLog:

PR preprocessor/79214
PR middle-end/79222
PR middle-end/79223
* builtins.c (check_sizes): Add inlinining context and issue
warnings even when -Wno-system-headers is set.
(check_strncat_sizes): Same.
(expand_builtin_strncat): Same.
(expand_builtin_memmove): New function.
(expand_builtin_stpncpy): Same.
(expand_builtin): Handle memmove and stpncpy.

gcc/testsuite/ChangeLog:

PR preprocessor/79214
PR middle-end/79222
PR middle-end/79223
* gcc.dg/pr79214.c: New test.
* gcc.dg/pr79214.h: New test header.
* gcc.dg/pr79222.c: New test.
* gcc.dg/pr79223.c: New test.
* gcc.dg/pr78138.c: Adjust.
* gfortran.dg/unconstrained_commons.f: Same.

From-SVN: r247618
gcc/ChangeLog
gcc/builtins.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr78138.c
gcc/testsuite/gcc.dg/pr79214.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr79214.h [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr79222.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr79223.c [new file with mode: 0644]
gcc/testsuite/gfortran.dg/unconstrained_commons.f