- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Steve,
I did a quick perusal of the web site and didn't see where to submit a software report. I assigned (via =) the output of a pointer function to a pointer (rather than a pointer assignment) and got the following error:
Compiling with Intel Fortran 11.0.061 [IA-32]...
ifort /nologo /debug:full /Od /gen-interfaces /warn:interfaces /module:"Debug\" /object:"Debug\" /traceback /check:bounds /libs:static /threads /dbglibs /c /assume:realloc_lhs /Qvc9 /Qlocation,link,"c:\Program Files\Microsoft Visual Studio 9.0\VC\bin" "C:\Documents and Settings\fooMaster\\test_foo\test_foo\FooListMod.F90"
0_11694
: catastrophic error: **Internal compiler error: internal abort** Please report this error along with the circumstances in which it occurred in a Software Problem Report. Note: File and line given may not be explicit cause of this error.
compilation aborted for C:\Documents and Settings\fooMaster\test_foo\test_foo\FooListMod.F90 (code 3)
test_foo - 1 error(s), 0 warning(s)
The pointer function in question is:[cpp]function get_oldFoo(foo_List) result(old_Foo_Ptr) implicit none type(fooList), intent(in) :: foo_List type(foo), pointer :: old_Foo_Ptr nullify(old_Foo_Ptr) return end function get_oldFoo[/cpp]
The function call that spawned the error was
[cpp]old_FooPtr = get_oldFoo(fooBar) [/cpp]
Replacing the call with a pointer assignment corrected the error:
[cpp]old_FooPtr => get_oldFoo(fooBar)[/cpp]
What's the normal way to report such an error? Thanks!
Cheers,
Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You can report them here if the test case is reasonably small. But I gather you didn't see the "For technical support, please click the Tech Support link" at the top of this forum's home page? You could also click the Software Support link at the top of every page here.
The problem you describe sounds familiar. I'll see if I can reproduce it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You can report them here if the test case is reasonably small. But I gather you didn't see the "For technical support, please click the Tech Support link" at the top of this forum's home page? You could also click the Software Support link at the top of every page here.
The problem you describe sounds familiar. I'll see if I can reproduce it.
Yeah, I saw the technical support links but after going 4 or 5 links deep I still didn't see an option for "submit a software problem report" or the like. I thought perhaps it was an internal report that your developers used and on my end, it was a typo that I fixed so I didn't need support. I figured I'd give you a heads up and if you can't replicate it I'll be happy to try to concoct a sanitized version of my code that fails in the same way.
Cheers,
Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Click on "Software Support". That page has:
Submit Software tool bugs through
Intel Premier Support. Registration required.
Nevertheless, we encourage you to use the forum first. I'll let you know what I find.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Click on "Software Support". That page has:
Submit Software tool bugs through
Intel Premier Support. Registration required.
Nevertheless, we encourage you to use the forum first. I'll let you know what I find.
You know, I'm havin' a hard time figuring out here if you're legitimately trying to be helpful or if you're just being cranky and sarcastic. I'll give you the benefit of the doubt here. I don't want directions on how to navigate your website, hell, I don't even want support here, I'm certainly not looking for extra paperwork (registration required) to do you a favor. I found and fixed the problem from my point of view. My first attempt through your website (the BIG SUPPORT at the very top) was pretty useless, the second (Software support) only promised extra pain in the ass. I'm just trying to tip you off, per the request in the compiler error, that somethin' ain't workin' right. If you need more information, I'll be happy to give you what I can.
Cheers,
Rich
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to be helpful. You wrote that you were unable to find directions on how to submit a bug report.
I have not been able to reproduce the problem, but that's likely because I don't have your definitions of types foo and fooList and perhaps some other code that ends up being relevant. Can you construct a small but complete example showing the problem? Here's what I tried.
[cpp]program test type foo integer i end type foo type fooList type(foo), pointer :: fooList end type fooList type(fooList), pointer :: p type(foo), pointer :: q q = get_oldFoo(p) print *, q%i contains function get_oldFoo(foo_List) result(old_Foo_Ptr) implicit none type(fooList), intent(in) :: foo_List type(foo), pointer :: old_Foo_Ptr nullify(old_Foo_Ptr) return end function get_oldFoo end program test[/cpp]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am trying to be helpful. You wrote that you were unable to find directions on how to submit a bug report.
I have not been able to reproduce the problem, but that's likely because I don't have your definitions of types foo and fooList and perhaps some other code that ends up being relevant. Can you construct a small but complete example showing the problem? Here's what I tried.
[cpp]program test
type foo
integer i
end type foo
type fooList
type(foo), pointer :: fooList
end type fooList
type(fooList), pointer :: p
type(foo), pointer :: q
q = get_oldFoo(p)
print *, q%i
contains
function get_oldFoo(foo_List) result(old_Foo_Ptr)
implicit none
type(fooList), intent(in) :: foo_List
type(foo), pointer :: old_Foo_Ptr
nullify(old_Foo_Ptr)
return
end function get_oldFoo
end program test[/cpp]
My apologies, I was a little cranky myself. In any case, here's a module that replicates the error on my machine:
[cpp]module fooMod
implicit none
! Precision constants
integer, parameter:: HI=selected_real_kind(12)
integer, parameter:: LO=selected_real_kind(5)
integer, parameter:: I_HI=selected_int_kind(9)
integer, parameter:: I_LO=selected_int_kind(4)
! Define class variables
integer(kind=I_LO) :: node_Count = 0
! Define node object - contains place holder for an unlimited
! polymorphic entity
type node
integer(kind=I_LO) :: name
type(node), pointer :: node_Ptr
integer(kind=I_LO), pointer :: storage_Ptr ! Place holder
end type node
! Define foo object
type foo
integer(kind=I_LO) :: size
character(len=1), dimension(:), allocatable :: fooVar
end type foo
! Define foo node for doubly linked list
type, extends(node) :: fooNode
type(foo) :: node_Foo
type(fooNode), pointer :: sfoo_Ptr => null()
type(fooNode), pointer :: pfoo_Ptr => null()
end type fooNode
! Define linked list of fooNodes
type fooList
integer(kind=I_LO) :: foo_Count
type(fooNode), pointer :: foo_Ptr
type(fooNode), pointer :: foo_Var_Ptr => null()
logical :: order_Flag
end type fooList
contains
subroutine foo_sub(foo_List)
implicit none
type(fooList), intent(inout) :: foo_List
type(fooNode), pointer :: old_Foo_Ptr
old_Foo_Ptr = get_oldFoo(foo_List)
return
end subroutine foo_sub
function get_oldFoo(foo_List) result(old_Foo_Ptr)
implicit none
type(fooList), intent(in) :: foo_List
type(fooNode), pointer :: old_Foo_Ptr
nullify(old_Foo_Ptr)
return
end function get_oldFoo
end module fooMod
Cheers,
Rich[/cpp]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ok, that I can reproduce. Thanks. I'll pass this on to the developers.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Entered as issue DPD200110351.
- 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

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