diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-05-25 20:59:27 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-05-25 20:59:27 +0000 |
commit | cdbc31abb8f613ad44f3de8c0b41c500b1ca7102 (patch) | |
tree | d811c6f7bac6b6337a78000eea617b1e2544870c /gcc/ada/gcc-interface/utils.c | |
parent | 0dc5169fd318af4266c14cf4d9263be181b8f89f (diff) |
* gcc-interface/decl.c (gnat_to_gnu_entity): Minor tweak.
* gcc-interface/trans.c (finalize_nrv_unc_r): Use CONSTRUCTOR_ELT.
* gcc-interface/utils.c (convert): Likewise and simplify.
(remove_conversions): Likewise.
* gcc-interface/utils2.c (compare_fat_pointers): Likewise.
(build_unary_op): Likewise and simplify.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223653 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/gcc-interface/utils.c')
-rw-r--r-- | gcc/ada/gcc-interface/utils.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index 184c7d53e9e2..3cefe1128349 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -4067,10 +4067,8 @@ convert (tree type, tree expr) /* If we have just converted to this padded type, just get the inner expression. */ - if (TREE_CODE (expr) == CONSTRUCTOR - && !vec_safe_is_empty (CONSTRUCTOR_ELTS (expr)) - && (*CONSTRUCTOR_ELTS (expr))[0].index == TYPE_FIELDS (etype)) - unpadded = (*CONSTRUCTOR_ELTS (expr))[0].value; + if (TREE_CODE (expr) == CONSTRUCTOR) + unpadded = CONSTRUCTOR_ELT (expr, 0)->value; /* Otherwise, build an explicit component reference. */ else @@ -4632,7 +4630,7 @@ remove_conversions (tree exp, bool true_address) && TREE_CODE (TREE_TYPE (exp)) == RECORD_TYPE && TYPE_JUSTIFIED_MODULAR_P (TREE_TYPE (exp))) return - remove_conversions ((*CONSTRUCTOR_ELTS (exp))[0].value, true); + remove_conversions (CONSTRUCTOR_ELT (exp, 0)->value, true); break; case COMPONENT_REF: |