[Bug fortran/82375] PDT components in PDT declarations fail to compile

jrfsousa at gmail dot com gcc-bugzilla@gcc.gnu.org
Sun Aug 2 12:52:48 GMT 2020


José Rui Faustino de Sousa <jrfsousa at gmail dot com> changed:

           What    |Removed                     |Added
                 CC|                            |jrfsousa at gmail dot com

--- Comment #8 from José Rui Faustino de Sousa <jrfsousa at gmail dot com> ---
Hi all!

Still ICEs using -fcheck=bounds

Due to the bounds check the symbol gets added to the deferrdd symbols list
(tlink) and then gfc_trans_deferred_vars calls gfc_check_pdt_dummy and an
infinite loop is created due to the recursion into the PDT components in

This seems to be enough to reproduce:

subroutine push_8 (self)

  type link(mat_len)
    integer, len :: mat_len
    type (link(:)), allocatable :: next
  end type link

  type (link(:)), allocatable :: self

  integer :: i

  i = self%mat_len
  print *, i

end subroutine push_8

Thank you very much.

Best regards,
José Rui

More information about the Gcc-bugs mailing list