This is the mail archive of the 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]

[Patch, fortran] PR60717 - Wrong code with recursive procedure with unlimited polymorphic dummy argument

Dear All,

This fix, of itself, is quite obvious.  The offset was being set to
zero for array segments, rather than that required for unity valued

I think that the fix could be used to clean up:


each of which contains calculation of the offset. However, I do not
think that this is the stage to fix things that are not broken!

I propose to keep the PR open as a reminder to look into this.

Bootstrapped and regtested on X86_64/FC17 - OK for trunk and backporting to 4.8?


 2014-04-12  Paul Thomas  <>

    PR fortran/58771
    * trans.h : Add 'use_offset' bitfield to gfc_se.
    * trans-array.c (gfc_conv_expr_descriptor) : Use 'use_offset'
    as a trigger to unconditionally recalculate the offset.
    trans-expr.c (gfc_conv_intrinsic_to_class) : Use it.
    (gfc_conv_procedure_call) : Ditto.

2014-04-02  Paul Thomas  <>

    PR fortran/58771
    * gfortran.dg/unlimited_polymorphic_17.f90 : New test

Attachment: pr60717.diff
Description: Text document

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