2019-02-23 Paul Thomas <pault@gcc.gnu.org>
Backport from trunk
PR fortran/88117
* resolve.c (deferred_op_assign): Return if the lhs expression
has the pointer attribute.
2019-02-23 Paul Thomas <pault@gcc.gnu.org>
Backport from trunk
PR fortran/88117
* gfortran.dg/deferred_character_32.f90 : New test
From-SVN: r269163
+2019-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ Backport from trunk
+ PR fortran/88117
+ * resolve.c (deferred_op_assign): Return if the lhs expression
+ has the pointer attribute.
+
2019-02-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71066
if (!gfc_check_dependency ((*code)->expr1, (*code)->expr2, 1))
return false;
+ if (gfc_expr_attr ((*code)->expr1).pointer)
+ return false;
+
tmp_expr = get_temp_from_expr ((*code)->expr1, ns);
tmp_expr->where = (*code)->loc;
+2019-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ Backport from trunk
+ PR fortran/88117
+ * gfortran.dg/deferred_character_32.f90 : New test
+
2019-02-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/71066
--- /dev/null
+! { dg-do run }
+!
+! Test the fix for PR88117.
+!
+! Contributed by Gerhard Steinmetz <gscfq@t-online.de>
+!
+program p
+ character(:), pointer :: z(:)
+ allocate (z, source = ['abcd', 'bcde'])
+ z = (z) ! gimplifier choked here.
+ if (any (z .ne. ['abcd', 'bcde'])) stop 1
+ deallocate (z)
+end