[multiple changes]
authorPaul Thomas <pault@gcc.gnu.org>
Sun, 18 Jan 2015 22:01:29 +0000 (22:01 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Sun, 18 Jan 2015 22:01:29 +0000 (22:01 +0000)
commit5b384b3d55927e813a97f4cd7aaef89df59ab1d8
tree8897cf52c9332ef304732836b3ee4b66ef2cbb2c
parent69fe4502488fea1573f2d5166235540e3d9a466e
[multiple changes]

2015-01-18  Andre Vehreschild  <vehre@gmx.de>
    Janus Weil <janus@gcc.gnu.org>

PR fortran/60255
* class.c (gfc_get_len_component): New.
(gfc_build_class_symbol): Add _len component to unlimited
polymorphic entities.
(find_intrinsic_vtab): Removed emitting of error message.
* gfortran.h: Added prototype for gfc_get_len_component.
* simplify.c (gfc_simplify_len): Use _len component where
available.
* trans-expr.c (gfc_class_len_get): New.
(gfc_conv_intrinsic_to_class): Add handling for deferred
character arrays.
(gfc_conv_structure): Treat _len component correctly.
(gfc_conv_expr): Prevent bind_c handling when not required.
(gfc_trans_pointer_assignment): Propagate _len component.
* trans-stmt.c (class_has_len_component): New.
(trans_associate_var): _len component treatment for associate
context.
(gfc_trans_allocate): Same as for trans_associate_var()
* trans.h: Added prototype for gfc_class_len_get.

2015-01-18  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60255
* gfortran.dg/unlimited_polymorphic_2.f03: Removed error.
* gfortran.dg/unlimited_polymorphic_20.f03: New test.

2015-01-18  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/64578
* gfortran.dg/unlimited_polymorphic_21.f90: New test

From-SVN: r219827
gcc/fortran/ChangeLog
gcc/fortran/class.c
gcc/fortran/gfortran.h
gcc/fortran/simplify.c
gcc/fortran/trans-expr.c
gcc/fortran/trans-stmt.c
gcc/fortran/trans.h
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/unlimited_polymorphic_2.f03
gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90 [new file with mode: 0644]