re PR fortran/79072 (ICE with class(*) pointer function result and character value)
authorPaul Thomas <pault@gcc.gnu.org>
Mon, 20 Nov 2017 19:09:34 +0000 (19:09 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Mon, 20 Nov 2017 19:09:34 +0000 (19:09 +0000)
commit6017b8f0cfadaad21ceaf8c58f940cbc118f1a17
tree8f3c208186072440d44271d3cd80eb69ade5e1bf
parentee1c213355f0f9d33568c5118f318f22057d1454
re PR fortran/79072 (ICE with class(*) pointer function result and character value)

2017-11-20  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/79072
* trans-expr.c (trans_class_vptr_len_assignment): Set from_len
if the temporary is unlimited polymorphic.
* trans-stmt.c (trans_associate_var): Use the fake result decl
to obtain the 'len' field from an explicit function result when
in that function scope.

2017-11-20  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/79072
* gfortran.dg/class_result_5.f90: New test.

From-SVN: r254966
gcc/fortran/ChangeLog
gcc/fortran/trans-expr.c
gcc/fortran/trans-stmt.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/class_result_5.f90 [new file with mode: 0644]