[Patch, fortran] PR90498 - [8/9/10 Regression] ICE with select type/associate and derived type argument containing class(*)

Paul Richard Thomas paul.richard.thomas@gmail.com
Sat May 18 20:12:00 GMT 2019


This turns out to be obvious. The component of the dummy argument
cannot be replaced by the hidden descriptor (actually the class
object) and so an ICE occurs. The fix is to add a guard against the
expression being a COMPONENT_REF.

I will commit to all three branches tomorrow unless there are any objections.

Bootstrapped and regtested on FC29/x86_64

Paul

2019-05-18  Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/90948
    * trans-stmt.c (trans_associate_var) Do not use the saved
    descriptor if the expression is a COMPONENT_REF.

2019-05-18  Paul Thomas  <pault@gcc.gnu.org>

    PR fortran/90948
    * gfortran.dg/associate_48.f90 : New test.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: submit.diff
Type: text/x-patch
Size: 2151 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20190518/247f0193/attachment.bin>


More information about the Gcc-patches mailing list