This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/64578] [OOP] Seg-fault and ICE with unlimited polymorphic array pointer function


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

--- Comment #16 from Paul Thomas <pault at gcc dot gnu.org> ---
Author: pault
Date: Sun Jan 18 22:01:29 2015
New Revision: 219827

URL: https://gcc.gnu.org/viewcvs?rev=219827&root=gcc&view=rev
Log:
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

Added:
    trunk/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90
    trunk/gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/class.c
    trunk/gcc/fortran/gfortran.h
    trunk/gcc/fortran/simplify.c
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/fortran/trans-stmt.c
    trunk/gcc/fortran/trans.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gfortran.dg/unlimited_polymorphic_2.f03


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]