aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-expr.c
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2016-11-25 12:23:43 +0000
committerPaul Thomas <pault@gcc.gnu.org>2016-11-25 12:23:43 +0000
commit3cae214f76deaf8271e26b094d6d14a31e537e00 (patch)
tree8fab2ee64998246794f0a8a8a5297074ab5045fd /gcc/fortran/trans-expr.c
parentae22bc5d4ad22aa0a8f21323bb576e6485ffbd4d (diff)
downloadgcc-3cae214f76deaf8271e26b094d6d14a31e537e00.zip
gcc-3cae214f76deaf8271e26b094d6d14a31e537e00.tar.gz
gcc-3cae214f76deaf8271e26b094d6d14a31e537e00.tar.bz2
[multiple changes]
2016-11-25 Andre Vehreschild <vehre@gcc.gnu.org> Paul Thomas <pault@gcc.gnu.org> PR fortran/78293 * trans-expr.c (gfc_conv_procedure_call): Prepend deallocation of alloctable components to post, rather than adding to se->post. * trans-stmt.c (gfc_trans_allocate): Move deallocation of expr3 allocatable components so that all expr3s are visited. 2016-11-25 Paul Thomas <pault@gcc.gnu.org> PR fortran/78293 * gfortran.dg/allocatable_function_10.f90: New test. * gfortran.dg/class_array_15.f03: Increase builtin_free count from 11 to 12. From-SVN: r242875
Diffstat (limited to 'gcc/fortran/trans-expr.c')
-rw-r--r--gcc/fortran/trans-expr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index 1331b07..1c2d5e1 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -5568,7 +5568,7 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym,
tmp = gfc_deallocate_alloc_comp (e->ts.u.derived, tmp, parm_rank);
- gfc_add_expr_to_block (&se->post, tmp);
+ gfc_prepend_expr_to_block (&post, tmp);
}
/* Add argument checking of passing an unallocated/NULL actual to