Diagnose just-past-the-end references for minor array bounds.
authorMartin Sebor <msebor@redhat.com>
Mon, 27 Jul 2020 19:54:50 +0000 (13:54 -0600)
committerMartin Sebor <msebor@redhat.com>
Mon, 27 Jul 2020 20:02:27 +0000 (14:02 -0600)
commit07bd5544a3ab3a04d1652dbcb5a09d7271a9706a
tree608a5181d87380dae4da6f9d4dea38d60ae58041
parentf9d98fa74800041b39b67fa204c3ad8b527df400
Diagnose just-past-the-end references for minor array bounds.

Resolves:
PR tree-optimization/84079 - missing -Warray-bounds taking the address of past-the-end element of a multidimensional array

gcc/ChangeLog:

PR tree-optimization/84079
* gimple-array-bounds.cc (array_bounds_checker::check_addr_expr):
Only allow just-past-the-end references for the most significant
array bound.

gcc/testsuite/ChangeLog:

PR tree-optimization/84079
* gcc.dg/Warray-bounds-62.c: New test.
gcc/gimple-array-bounds.cc
gcc/testsuite/gcc.dg/Warray-bounds-62.c [new file with mode: 0644]