- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
IFORT 11.1.073 on Linux, 11.1.067 on WXP-32 and 11.1.072 on Linux-IA64 causes an illegal access (C0000005 on Windows, SIGSEG on Linux) crash compiling this source code:
[fortran]MODULE DPTYPEThe problem goes away if the INTENT specifications on lines 15 and 16 are removed or merged into the respective type declarations.
IMPLICIT NONE
INTEGER, parameter :: dp = kind(1.0d0)
END MODULE DPTYPE
!
MODULE S_QHF
INTERFACE
SUBROUTINE QHF(Mtyp,M,N,Const,Diag,A,Lda)
USE DPTYPE
IMPLICIT NONE
REAL(dp) :: Const , Diag
INTEGER :: Lda , M , N
CHARACTER(len=1) :: Mtyp
REAL(dp) , DIMENSION(Lda,*) :: A
INTENT (IN) :: Const , Diag , Lda , M , Mtyp , N
INTENT (IN OUT) :: A
END SUBROUTINE QHF
END INTERFACE
END MODULE S_QHF
[/fortran]
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks - we'll take a look.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, Steve.
This may be an apt moment to request a small "feature". The code that produced the ICE was actually a small bit of a much larger file that contained about a hundred INTERFACE declarations for the subroutines and functions of a project, with the structure:
Module A_S
Interface
Subroutine A(...)
...
End Subroutine A
End Interface
End Module A_S
...
Module M_S
Interface
Subroutine M(...)
...
End Subroutine M
End Interface
End Module M_S
...
Module Z_S
Interface
Subroutine Z(...)
...
End Subroutine Z
End Interface
End Module Z_S
The ICE was triggered by the code in module M_S, but the error message gave me no clue as to which interface declaration was triggering the ICE. This was despite the compiler being able to intercept the SIGSEG.
I feared that I would have to split the source into the ~100 pieces and try the compiler on each module source. Fortunately, I did not have to do so.
Apparently, the compiler writes and closes each module file as soon as it can, rather than buffering the output. Thus, I did a directory listing of the module files sorted by file-modification time, and identified the module source next in sequence in the source file after the last one that was successfully compiled. With my example above, I would see A_S.mod,..., L_S mod, but no M_S mod, etc.
The request: please have the compiler report the context (by line-number, or module/subprogram name) corresponding to the intercepted SIGSEG.
This may be an apt moment to request a small "feature". The code that produced the ICE was actually a small bit of a much larger file that contained about a hundred INTERFACE declarations for the subroutines and functions of a project, with the structure:
Module A_S
Interface
Subroutine A(...)
...
End Subroutine A
End Interface
End Module A_S
...
Module M_S
Interface
Subroutine M(...)
...
End Subroutine M
End Interface
End Module M_S
...
Module Z_S
Interface
Subroutine Z(...)
...
End Subroutine Z
End Interface
End Module Z_S
The ICE was triggered by the code in module M_S, but the error message gave me no clue as to which interface declaration was triggering the ICE. This was despite the compiler being able to intercept the SIGSEG.
I feared that I would have to split the source into the ~100 pieces and try the compiler on each module source. Fortunately, I did not have to do so.
Apparently, the compiler writes and closes each module file as soon as it can, rather than buffering the output. Thus, I did a directory listing of the module files sorted by file-modification time, and identified the module source next in sequence in the source file after the last one that was successfully compiled. With my example above, I would see A_S.mod,..., L_S mod, but no M_S mod, etc.
The request: please have the compiler report the context (by line-number, or module/subprogram name) corresponding to the intercepted SIGSEG.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
ICE reported as issue DPD200162164. I will also request more information when an error occurs - this would be helpful to us as well.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I expect the fix for this to appear in Update 4.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page