re PR fortran/64757 (ICE in fold_convert_loc, at fold-const.c:2353)
authorPaul Thomas <pault@gcc.gnu.org>
Thu, 5 Feb 2015 08:06:04 +0000 (08:06 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Thu, 5 Feb 2015 08:06:04 +0000 (08:06 +0000)
commitcc6a430fb2273dd9ce5d096791455ec31056554f
tree9380a2c4ec9b309f9a998e666b4059dc7484d6fc
parent3cd52c11b284c1123b1782dc5629d22a42844c37
re PR fortran/64757 (ICE in fold_convert_loc, at fold-const.c:2353)

2015-02-05  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/64757
* resolve.c (resolve_structure_cons): Obtain the rank of class
components.
* trans-expr.c (gfc_trans_alloc_subarray_assign): Do the
assignment to allocatable class array components.
(alloc_scalar_allocatable_for_subcomponent_assignment): If comp
is a class component, allocate to the _data field.
(gfc_trans_subcomponent_assign): If a class component with a
derived type expression set the _vptr field and for array
components, call gfc_trans_alloc_subarray_assign. For scalars,
the assignment is performed here.

2015-02-05  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/64757
* gfortran.dg/type_to_class_2.f90: New test
* gfortran.dg/type_to_class_3.f90: New test

From-SVN: r220436
gcc/fortran/ChangeLog
gcc/testsuite/ChangeLog