diff options
author | pault <pault@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-06-14 05:11:04 +0000 |
---|---|---|
committer | pault <pault@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-06-14 05:11:04 +0000 |
commit | fade5ce98b583fa416ba84b4cc3cad12af227f57 (patch) | |
tree | 289ae642716afff8fa017677ff690ec172e826da | |
parent | c49dc07089aa5e8cc397b4090ad63f967ba5664d (diff) | |
download | gcc-fade5ce98b583fa416ba84b4cc3cad12af227f57.tar.gz |
2014-06-14 Paul Thomas <pault@gcc.gnu.org>
* trans-array.c (gfc_conv_array_parameter): Assign 'old_desc'
to 'new_desc' rather than some of the components.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/fortran-dev@211664 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/fortran/ChangeLog.fortran-dev | 5 | ||||
-rw-r--r-- | gcc/fortran/trans-array.c | 8 |
2 files changed, 6 insertions, 7 deletions
diff --git a/gcc/fortran/ChangeLog.fortran-dev b/gcc/fortran/ChangeLog.fortran-dev index f4db5885af1..4c6f85189ee 100644 --- a/gcc/fortran/ChangeLog.fortran-dev +++ b/gcc/fortran/ChangeLog.fortran-dev @@ -1,3 +1,8 @@ +2014-06-14 Paul Thomas <pault@gcc.gnu.org> + + * trans-array.c (gfc_conv_array_parameter): Assign 'old_desc' + to 'new_desc' rather than some of the components. + 2014-06-03 Paul Thomas <pault@gcc.gnu.org> * trans-array.c (gfc_conv_expr_descriptor): Use the type of the diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c index bffebcc1f6d..f2838babd28 100644 --- a/gcc/fortran/trans-array.c +++ b/gcc/fortran/trans-array.c @@ -7539,13 +7539,7 @@ gfc_conv_array_parameter (gfc_se * se, gfc_expr * expr, bool g77, tree old_desc = tmp; tree new_desc = gfc_create_var (TREE_TYPE (old_desc), "arg_desc"); - old_field = gfc_conv_descriptor_dtype (old_desc); - new_field = gfc_conv_descriptor_dtype (new_desc); - gfc_add_modify (&se->pre, new_field, old_field); - - old_field = gfc_conv_descriptor_offset (old_desc); - new_field = gfc_conv_descriptor_offset (new_desc); - gfc_add_modify (&se->pre, new_field, old_field); + gfc_add_modify (&se->pre, new_desc, old_desc); for (int i = 0; i < expr->rank; i++) { |