diff options
author | Richard Biener <rguenther@suse.de> | 2017-05-04 09:08:01 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-05-04 09:08:01 +0000 |
commit | c3e46927e4504374677f4e17838e6e51b5d7b185 (patch) | |
tree | 060bfa97ff1fe70567c51cb7685cdc78194aa1db /gcc/tree.h | |
parent | 99b68476de7635380de3480b83e852a38fe36f64 (diff) | |
download | gcc-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.h')
-rw-r--r-- | gcc/tree.h | 10 |
1 files changed, 4 insertions, 6 deletions
@@ -4886,12 +4886,10 @@ extern tree array_ref_up_bound (tree); EXP, an ARRAY_REF or an ARRAY_RANGE_REF. */ extern tree array_ref_low_bound (tree); -/* Returns true if REF is an array reference to an array at the end of - a structure. If this is the case, the array may be allocated larger - than its upper bound implies. When second argument is true considers - REF when it's a COMPONENT_REF in addition ARRAY_REF and - ARRAY_RANGE_REF. */ -extern bool array_at_struct_end_p (tree, bool = false); +/* Returns true if REF is an array reference or a component reference + to an array at the end of a structure. If this is the case, the array + may be allocated larger than its upper bound implies. */ +extern bool array_at_struct_end_p (tree); /* Return a tree representing the offset, in bytes, of the field referenced by EXP. This does not include any offset in DECL_FIELD_BIT_OFFSET. */ |