- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,I am getting an ICE on 64-bit Fedora 11 with ifort 11.1 (073). This is a test case:[fortran]MODULE tester IMPLICIT NONE TYPE :: Matrix REAL :: a(2,3) CONTAINS PROCEDURE :: NJ => GetNJ END TYPE Matrix CONTAINS PURE INTEGER FUNCTION GetNJ(mat) RESULT(ans) IMPLICIT NONE CLASS(Matrix), INTENT(IN) :: mat ans = SIZE(mat%a,2) END FUNCTION GetNJ SUBROUTINE MySub(a,x,y) IMPLICIT NONE TYPE(Matrix), INTENT(IN) :: a REAL, INTENT(IN) :: x(GetNJ(a)) ! OK REAL, INTENT(IN) :: y(a%NJ) ! ICE is here !... END SUBROUTINE MySub END MODULE tester [/fortran] I'm pretty sure the code is valid, but even if not, there should clearly not be an ICE. This error did not seem to have already been reported, but I easily may have missed it!Thanks,Jared
Link Copied
10 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try removing :: on line 4
TYPE :: Matrix
change to
TYPEMatrix
Jim Dempsey
TYPE :: Matrix
change to
TYPEMatrix
Jim Dempsey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks, I did miss that when I was creating this snippet from my true code (the type is actually extended). However, I still encounter the internal compiler error.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for reporting this issue, Jared. I will try reproducing this and update again when I know more.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This is also reproducible with newer compilers which is a little surprising sinceit seems like a case we would have seen/fixed already, but apparently not. Thanks again for reporting this and for the nice reproducer. I sent this to Development (see internal tracking # below) and will update as I learn more.
(Internal tracking id: DPD200160165) (Resolution Update on 10/14/2012): This defect is fixed in the Intel® Fortran Composer XE 2013 Initial Release (2013.0.0.079 - Linux)
(Internal tracking id: DPD200160165) (Resolution Update on 10/14/2012): This defect is fixed in the Intel® Fortran Composer XE 2013 Initial Release (2013.0.0.079 - Linux)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for looking into it!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It's been a while - I had forgotten to check back on this issue. But from what I can tell, this code still has problems with Intel Fortran Composer XE 2011R9 on Win7/64. Was there a fix for this? I haven't found any references to DPD200160165.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It has not been fixed yet. I have asked the developers for status.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This has been fixed for a release later this year.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
TYPE :: Matrix is a perfectly valid statement. The '::' is not required in this case, but it is allowed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The internal error reported in this thread is fixed in our current Intel® Fortran Composer XE 2013 Initial Release (2013.0.0.079 - Linux).
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