- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Compiling and running the code
module dt_mod
implicit none
type, public :: dt
integer :: i=0
end type dt
end module dt_mod
module main_mod
! triggers error in ifort W_FC_C_9.1.028
use dt_mod, only: dt
implicit none
contains
subroutine xmain()
type(dt), allocatable :: dt_vec(:)
print*,"done"
stop
end subroutine xmain
end module main_mod
program xx
use main_mod, only: xmain
print*,"calling xmain"
call xmain()
print*,"after calling xmain"
end program xx
using W_FC_C_9.1.028 with the options /traceback /check:all /warn:all /warn:unused
I get a crash:
xifort_alloc_bug.f90(14) : Info: This variable has not been used. [DT_VEC]
type(dt), allocatable :: dt_vec(:)
-------------------------^
calling xmain
forrtl: severe (408): fort: (8): Attempt to fetch from allocatable variable DT_VEC when it is not allocated
Image PC Routine Line Source
ifort_xifort_allo 0044709E Unknown Unknown Unknown
ifort_xifort_allo 00444350 Unknown Unknown Unknown
ifort_xifort_allo 00405CAE Unknown Unknown Unknown
ifort_xifort_allo 00405E64 Unknown Unknown Unknown
ifort_xifort_allo 004011B1 _MAIN_MOD_mp_XMAI 13 xifort_alloc_bug.f90
ifort_xifort_allo 0040105B _MAIN__ 23 xifort_alloc_bug.f90
ifort_xifort_allo 0044D1D8 Unknown Unknown Unknown
ifort_xifort_allo 00432408 Unknown Unknown Unknown
kernel32.dll 7C816D4F Unknown Unknown Unknown
I think the program is valid. It works with g95 and gfortran.
Vivek Rao
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No, different bug. It is specifically related to /check:pointer which is making an improper check. I'll report it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your reply.
It seems that /check:all turns on the the option /check:pointer
When I type ifort /? at the command line I see
/check:
check run-time conditions
keywords: all (same as /4Yb), none (same as /nocheck, /4Nb),
[no]arg_temp_created, [no]bounds,[no]format,
[no]output_conversion, [no]power, [no]uninit, [no]args
There is no mention of a /check:pointer option. I suggest mentioning it here and in the online documentation.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I found this post upon search of the same problem. I am able to run my program properly on a different maching using the i386 9.0 ifort compiler. And using the 64_x86 - 9.1.040 compiler: I get the following error:
forrtl: severe (408): fort: (8): Attempt to fetch from allocatable variable TRNX when it is not allocated.
After reading the replies, I'm not sure how to fix the problem? Suggestions please?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Allthough, frustrating at first, I am very glad to have run into this issue, because disabling all run time checks (-check none) has created a substantial performace gain, which is crucial to my application.
This decieving part here was that the manual states that check is disabled by default, which apparently its not. Thanks for the help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you - this was very helpful.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page