[Bug fortran/60255] [OOP] Deferred character length variable at (1) cannot yet be associated with unlimited polymorphic entities

vehre at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Mar 23 12:57:00 GMT 2015


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60255

--- Comment #9 from vehre at gcc dot gnu.org ---
Author: vehre
Date: Mon Mar 23 11:58:49 2015
New Revision: 221591

URL: https://gcc.gnu.org/viewcvs?rev=221591&root=gcc&view=rev
Log:
gcc/fortran/ChangeLog

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

    Backported from mainline
    PR fortran/60255
    Initial patch version: Janus Weil
    * 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 treatement for associate
    context.
    (gfc_trans_allocate): Same as for trans_associate_var()
    * trans.h: Add prototype for gfc_class_len_get.

gcc/testsuite/ChangeLog

2015-03-20  Andre Vehreschild  <vehre@gmx.de>

    Backport from mainline
    PR fortran/60255
    * gfortran.dg/unlimited_polymorphic_2.f03: Removed error.
    Converted from dos to unix line endings.
    * gfortran.dg/unlimited_polymorphic_20.f03: New test.


Added:
   
branches/gcc-4_9-branch/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f03
Modified:
    branches/gcc-4_9-branch/gcc/fortran/ChangeLog
    branches/gcc-4_9-branch/gcc/fortran/class.c
    branches/gcc-4_9-branch/gcc/fortran/gfortran.h
    branches/gcc-4_9-branch/gcc/fortran/simplify.c
    branches/gcc-4_9-branch/gcc/fortran/trans-expr.c
    branches/gcc-4_9-branch/gcc/fortran/trans-stmt.c
    branches/gcc-4_9-branch/gcc/fortran/trans.h
    branches/gcc-4_9-branch/gcc/testsuite/ChangeLog
   
branches/gcc-4_9-branch/gcc/testsuite/gfortran.dg/unlimited_polymorphic_2.f03



More information about the Gcc-bugs mailing list