summaryrefslogtreecommitdiff
path: root/gcc/tree-vrp.c
diff options
context:
space:
mode:
authorsimonb <simonb@138bc75d-0d04-0410-961f-82ee72b054a4>2008-05-02 20:01:31 +0000
committersimonb <simonb@138bc75d-0d04-0410-961f-82ee72b054a4>2008-05-02 20:01:31 +0000
commit8e31b4b2f9d28816b80e1134dc718b5e8146f1b8 (patch)
tree7a9abc71059af57af9a976cfa19589fee9e462be /gcc/tree-vrp.c
parent875a66b2f9a8edf3b1867ae1a33d0db4cfc6747b (diff)
downloadgcc-8e31b4b2f9d28816b80e1134dc718b5e8146f1b8.tar.gz
Rolled back the following changes made in revision 134865:
* c-common.h (warn_array_subscript_range): New function. * c-common.c (warn_array_subscript_range): Ditto. * tree-vrp.c (check_array_ref): Corrected code to agree with comment, ignoring only arrays of size 0 or size 1. * c-typeck.c (build_array_ref): Call warn_array_subscript_range. * testsuite/gcc.dg/Warray-bounds.c: Updated for frontend warnings, additional tests for arrays of size 0 and size 1. * testsuite/g++.dg/warn/Warray-bounds.c: Ditto. * testsuite/gcc.dg/Warray-bounds-noopt.c: New testcase. * testsuite/g++.dg/warn/Warray-bounds-noopt.c: Ditto. * typeck.c (build_array_ref): Call warn_array_subscript_range. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@134889 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vrp.c')
-rw-r--r--gcc/tree-vrp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 61031996185..4b409e46aaf 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -4645,8 +4645,8 @@ check_array_ref (tree ref, location_t* locus, bool ignore_off_by_one)
&& TYPE_MAX_VALUE (TYPE_DOMAIN (TREE_TYPE (ref))) == NULL_TREE)
/* Accesses after the end of arrays of size 0 (gcc
extension) and 1 are likely intentional ("struct
- hack"). Note that up_bound is array dimension - 1. */
- || compare_tree_int (up_bound, 1) < 0)
+ hack"). */
+ || compare_tree_int (up_bound, 1) <= 0)
return;
low_bound = array_ref_low_bound (ref);