aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/ChangeLog
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2015-07-17 09:40:29 +0000
committerMikael Morin <mikael@gcc.gnu.org>2015-07-17 09:40:29 +0000
commit0e1f8c6a90834987f63f911a86d78e40d5577e80 (patch)
tree7078210f7a994805cf1f64553e2404f73464f23c /gcc/fortran/ChangeLog
parenta6c51a129328343ba445f1cc663f455c173cdc97 (diff)
downloadgcc-0e1f8c6a90834987f63f911a86d78e40d5577e80.zip
gcc-0e1f8c6a90834987f63f911a86d78e40d5577e80.tar.gz
gcc-0e1f8c6a90834987f63f911a86d78e40d5577e80.tar.bz2
Fix PR61831: Side-effect variable component deallocation
gcc/fortran/ 2015-07-17 Mikael Morin <mikael@gcc.gnu.org> Dominique d'Humieres <dominiq@lps.ens.fr> PR fortran/61831 * trans-array.c (gfc_conv_array_parameter): Guard allocatable component deallocation code generation with descriptorless calling convention flag. * trans-expr.c (gfc_conv_expr_reference): Remove allocatable component deallocation code generation from revision 212329. (expr_may_alias_variables): New function. (gfc_conv_procedure_call): New boolean elemental_proc to factor check for procedure elemental-ness. Rename boolean f to nodesc_arg and declare it in the outer scope. Use expr_may_alias_variables, elemental_proc and nodesc_arg to decide whether generate allocatable component deallocation code. (gfc_trans_subarray_assign): Set deep copy flag. gcc/testsuite/ 2015-07-17 Mikael Morin <mikael@gcc.gnu.org> PR fortran/61831 * gfortran.dg/alloc_comp_auto_array_3.f90: Count the number of generated while loops in the tree dump. * gfortran.dg/derived_constructor_comps_6.f90: New file. Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr> From-SVN: r225926
Diffstat (limited to 'gcc/fortran/ChangeLog')
-rw-r--r--gcc/fortran/ChangeLog17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index a3fd6de..af81bd5 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,20 @@
+2015-07-17 Mikael Morin <mikael@gcc.gnu.org>
+ Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/61831
+ * trans-array.c (gfc_conv_array_parameter): Guard allocatable
+ component deallocation code generation with descriptorless
+ calling convention flag.
+ * trans-expr.c (gfc_conv_expr_reference): Remove allocatable
+ component deallocation code generation from revision 212329.
+ (expr_may_alias_variables): New function.
+ (gfc_conv_procedure_call): New boolean elemental_proc to factor
+ check for procedure elemental-ness. Rename boolean f to nodesc_arg
+ and declare it in the outer scope. Use expr_may_alias_variables,
+ elemental_proc and nodesc_arg to decide whether generate allocatable
+ component deallocation code.
+ (gfc_trans_subarray_assign): Set deep copy flag.
+
2015-07-16 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/66724