Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

ICE with abstract interface

mecej4
Honored Contributor III
488 Views
The following short module with a declaration of an abstract interface causes the 32 and 64 bit versions of l_cprof_p_11.1.073 on Linux x64 to abort with an internal compiler error.
[fortran]MODULE DKIND
integer, parameter :: wp=kind(1.d0)
END MODULE DKIND

MODULE S_JAC
ABSTRACT INTERFACE
SUBROUTINE JACSUB(Neq,T,Y,Ml,Mu,Pd,Nrowpd)
USE DKIND
IMPLICIT NONE
INTEGER, INTENT(IN) :: Ml , Mu , Neq , Nrowpd
REAL(wp), INTENT(IN) :: T
REAL(wp) , DIMENSION(Nrowpd,Neq) :: Pd
REAL(wp) , DIMENSION(Neq), INTENT(IN) :: Y
INTENT(IN OUT) :: Pd ! ===>>> this line cause ICE
END SUBROUTINE JACSUB
END INTERFACE
END MODULE S_JAC
[/fortran]
I realize that the line that causes the ICE is redundant, and that in this trivial example a simple workaround is to just leave that line out.
0 Kudos
3 Replies
Kevin_D_Intel
Employee
488 Views
Thank you for reporting this issue, mecej4. I will test with some internal development compilers and update the post when I have more information.
0 Kudos
Kevin_D_Intel
Employee
488 Views

This defect exists in newer compilers too. I reported this to Development (see internal tracking id below) and will update this thread as I learn more about a fix.

(Internal tracking id: DPD200160123)

(Resolution Update on 08/02/2011): This defect is fixed in the Intel Fortran Composer XE 2011 Update 4 (2011.4.191 - Linux)

0 Kudos
Kevin_D_Intel
Employee
488 Views
This defect is fixed in the Intel Fortran Composer XE 2011 Update 4 (2011.4.191 - Linux)
0 Kudos
Reply