r268037 - in /trunk/gcc: ChangeLog gimple-fold....

msebor@gcc.gnu.org msebor@gcc.gnu.org
Thu Jan 17 16:33:00 GMT 2019


Author: msebor
Date: Thu Jan 17 16:33:55 2019
New Revision: 268037

URL: https://gcc.gnu.org/viewcvs?rev=268037&root=gcc&view=rev
Log:
PR tree-optimization/88800 - Spurious -Werror=array-bounds for non-taken branch

gcc/ChangeLog:

	PR tree-optimization/88800
	* gimple-fold.c (gimple_fold_builtin_memory_op): Avoid checking
	NO_WARNING bit here.  Avoid folding out-of-bounds calls.
	* gimple-ssa-warn-restrict.c (maybe_diag_offset_bounds): Remove
	redundant argument.  Add new argument and issue diagnostics under
	its control.  Detect out-of-bounds access even with warnings
	disabled.
	(check_bounds_or_overlap): Change return type.  Add argument.
	(wrestrict_dom_walker::check_call): Adjust.
	* gimple-ssa-warn-restrict.h (check_bounds_or_overlap): Add argument.
	* tree-ssa-strlen.c (handle_builtin_strcpy): Adjust to change in
	check_bounds_or_overlap's return value.
	(handle_builtin_stxncpy): Same.
	(handle_builtin_strcat): Same.

gcc/testsuite/ChangeLog:

	PR tree-optimization/88800
	* c-c++-common/Wrestrict.c: Adjust.
	* gcc.dg/Warray-bounds-37.c: New test.
	* gcc.dg/builtin-memcpy-2.c: New test.
	* gcc.dg/builtin-memcpy.c: New test.


Added:
    trunk/gcc/testsuite/gcc.dg/Warray-bounds-37.c
    trunk/gcc/testsuite/gcc.dg/builtin-memcpy-2.c
    trunk/gcc/testsuite/gcc.dg/builtin-memcpy.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/gimple-fold.c
    trunk/gcc/gimple-ssa-warn-restrict.c
    trunk/gcc/gimple-ssa-warn-restrict.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/c-c++-common/Wrestrict.c
    trunk/gcc/tree-ssa-strlen.c



More information about the Gcc-cvs mailing list