Segfault with final method

Segfault with final method

Hi, I have detected, what I believe, is a bug in ifort (13.0.0 20120731). The following code produces a segfault for no reason known to me.

module mod_b

  type :: b
   contains
     final :: finalize
  end type b

contains

  subroutine finalize(self)
    type(b) :: self
  end subroutine finalize

end module mod_b

module mod_t

  use mod_b

  type :: tt
   contains
     procedure :: get
  end type tt

contains

  subroutine get( self, box)
    class(tt), target :: self
    type(b), pointer, intent(out), optional :: box
    if( present(box) ) nullify(box)
  end subroutine get

end module mod_t

program d1

  use mod_t
  type(tt) :: t
  call t%get()

end program d1

When any of the options "pointer, intent(out), optional" are altered or removed the segfault disappears.

Regards,

Paweł Biernat.

4 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.
Best Reply

Hello Pawel,

Thank you for reporting this problem. I have escalated this issue to the developers. The issue number is DPD200236504. I will post any updates I receive to this thread.

Regards,
Annalee
Intel Developer Support

Hello Pawel,

A fix has been found for this issue. We are planning to include it in an update which is currently planned for mid-January.

Regards,
Annalee

Hello Pawel,

This is issue has been fixed in Intel® Fortran Composer XE for Linux* 2013 Update 3 which is now available at the Intel® Registration Center.

Annalee

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen