aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-chkp.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2017-05-04 09:08:01 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2017-05-04 09:08:01 +0000
commitc3e46927e4504374677f4e17838e6e51b5d7b185 (patch)
tree060bfa97ff1fe70567c51cb7685cdc78194aa1db /gcc/tree-chkp.c
parent99b68476de7635380de3480b83e852a38fe36f64 (diff)
downloadgcc-c3e46927e4504374677f4e17838e6e51b5d7b185.zip
gcc-c3e46927e4504374677f4e17838e6e51b5d7b185.tar.gz
gcc-c3e46927e4504374677f4e17838e6e51b5d7b185.tar.bz2
tree.c (array_at_struct_end_p): Handle arrays at struct end with flexarrays more conservatively.
2017-05-04 Richard Biener <rguenther@suse.de> * tree.c (array_at_struct_end_p): Handle arrays at struct end with flexarrays more conservatively. Refactor and treat arrays of arrays or aggregates more strict. Fix VIEW_CONVERT_EXPR handling. Remove allow_compref argument. * tree.c (array_at_struct_end_p): Adjust prototype. * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust. * gimple-fold.c (get_range_strlen): Likewise. * tree-chkp.c (chkp_may_narrow_to_field): Likewise. From-SVN: r247581
Diffstat (limited to 'gcc/tree-chkp.c')
-rw-r--r--gcc/tree-chkp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-chkp.c b/gcc/tree-chkp.c
index b1ff218..23f5af9 100644
--- a/gcc/tree-chkp.c
+++ b/gcc/tree-chkp.c
@@ -3277,7 +3277,7 @@ chkp_may_narrow_to_field (tree ref, tree field)
return DECL_SIZE (field) && TREE_CODE (DECL_SIZE (field)) == INTEGER_CST
&& tree_to_uhwi (DECL_SIZE (field)) != 0
&& !(flag_chkp_flexible_struct_trailing_arrays
- && array_at_struct_end_p (ref, true))
+ && array_at_struct_end_p (ref))
&& (!DECL_FIELD_OFFSET (field)
|| TREE_CODE (DECL_FIELD_OFFSET (field)) == INTEGER_CST)
&& (!DECL_FIELD_BIT_OFFSET (field)