diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-11 19:43:02 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-11 19:43:02 +0000 |
commit | 9ba1ed5a8ff65cefe456fbdd48b7244800de1f87 (patch) | |
tree | 6794bfdde0fa3a761d0a915bf86007b0ca87d7e2 /gcc/ada/gigi.h | |
parent | d2d8f66232a3fcc744de1107058fc3075769f795 (diff) | |
download | gcc-9ba1ed5a8ff65cefe456fbdd48b7244800de1f87.tar.gz |
* tree-ssa-structalias.c (push_fields_onto_fieldstack): Deal with
TYPE_NONALIASED_COMPONENT like with DECL_NONADDRESSABLE_P.
ada/
* decl.c (array_type_has_nonaliased_component): New predicate.
(gnat_to_gnu_field) <E_Array_Type>: Invoke the above predicate to
set the TYPE_NONALIASED_COMPONENT flag on the type.
<E_Array_Subtype>: Likewise.
* gigi.h (type_for_nonaliased_component_p): Declare.
* utils.c (type_for_nonaliased_component_p): New predicate.
(create_field_decl): Invoke the above predicate to set the
DECL_NONADDRESSABLE_P flag on the field.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128391 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gigi.h')
-rw-r--r-- | gcc/ada/gigi.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ada/gigi.h b/gcc/ada/gigi.h index 42e923391b5..97a1862a268 100644 --- a/gcc/ada/gigi.h +++ b/gcc/ada/gigi.h @@ -704,6 +704,10 @@ extern tree unchecked_convert (tree type, tree expr, bool notrunc_p); the latter being a record type as predicated by Is_Record_Type. */ extern enum tree_code tree_code_for_record_type (Entity_Id); +/* Return true if GNU_TYPE is suitable as the type of a non-aliased + component of an aggregate type. */ +extern bool type_for_nonaliased_component_p (tree); + /* Prepare expr to be an argument of a TRUTH_NOT_EXPR or other logical operation. |