- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I get an internal compiler error C0000005 on DVF6.5A.
With the same code, I have compiled successfully on SGI Fortran 7.2 and LF95.
Have anyone got some experience of this kind of error and how to solve??
With the same code, I have compiled successfully on SGI Fortran 7.2 and LF95.
Have anyone got some experience of this kind of error and how to solve??
Link Copied
6 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This error should never happen no matter what are circumstances. For the benefit of all users, please send a message
with problem description to vf-support@compaq.com with attached zipped workspace, if possible.
Usually, this kind of error happens when compiler fails to understand
some expression either as valid or invalid. Quick workaround is to find the
line in question using "dissection method", i.e. comment out half the
problematical source and compile only; if the error reappears, comment more of the rest; if the error does not appear, uncomment some of commented part etc. In this way, you should find the line in question;
then, it should be rewritten.
Tip: You can use metacommands !DEC$IF(.FALSE.)...!DEC$ENDIF as "block
comments".
For example, I got such error in CVF5 in release builds with aggregation of character-manipulation functions, i.e.
sString=TRIM(ADJUSTL(MyCharFunction())). The problem was solved
using temporary variable, i.e. sTemp=MyCharFunction(); sString=TRIM(ADJUSTL(sTemp)).
Rebuild all sometimes help, but the reason is more probably something
like above. Please let us know about the outcome.
HTH
Jugoslav
with problem description to vf-support@compaq.com with attached zipped workspace, if possible.
Usually, this kind of error happens when compiler fails to understand
some expression either as valid or invalid. Quick workaround is to find the
line in question using "dissection method", i.e. comment out half the
problematical source and compile only; if the error reappears, comment more of the rest; if the error does not appear, uncomment some of commented part etc. In this way, you should find the line in question;
then, it should be rewritten.
Tip: You can use metacommands !DEC$IF(.FALSE.)...!DEC$ENDIF as "block
comments".
For example, I got such error in CVF5 in release builds with aggregation of character-manipulation functions, i.e.
sString=TRIM(ADJUSTL(MyCharFunction())). The problem was solved
using temporary variable, i.e. sTemp=MyCharFunction(); sString=TRIM(ADJUSTL(sTemp)).
Rebuild all sometimes help, but the reason is more probably something
like above. Please let us know about the outcome.
HTH
Jugoslav
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for Jugoslav for pointing this out.
I found the error when call subroutine like this for dummy@
a(ia(imin(k-1)):ia(imax(k-1)+1)-1) and
ja(ia(imin(k)):ia(imax(k)+1)-1).
! .................
CALL rwsrt(ecg1, ecg2, ierr, mdjtr, imin(k-1), imax(k-1), iws, &
a(ia(imin(k-1)):ia(imax(k-1)+1)-1), &
ja(ia(imin(k-1)):ia(imax(k-1)+1)-1))
!........................
Any idea would be appreciated.
I found the error when call subroutine like this for dummy@
a(ia(imin(k-1)):ia(imax(k-1)+1)-1) and
ja(ia(imin(k)):ia(imax(k)+1)-1).
! .................
CALL rwsrt(ecg1, ecg2, ierr, mdjtr, imin(k-1), imax(k-1), iws, &
a(ia(imin(k-1)):ia(imax(k-1)+1)-1), &
ja(ia(imin(k-1)):ia(imax(k-1)+1)-1))
!........................
Any idea would be appreciated.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This one looks "typical" -- a complicated expression which invokes some
f90 features, such as array sections. Did you try something like:
I bet that would fix it.
Jugoslav
f90 features, such as array sections. Did you try something like:
i1 = ia(imin(k-1)) i2 = ia(imax(k-1)+1)-1 CALL rwsrt(ecg1, ecg2, ierr, mdjtr, imin(k-1), imax(k-1), iws, & a(i1:i2), ja(i1:i2))
I bet that would fix it.
Jugoslav
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank a lot.
The errors are disappeared using temporary variable.
But it is funny, why it appeared on CVF 6.5A ? when I compiled without temporary variables on CVF 6.5, the internal compiler error is nothing.
The errors are disappeared using temporary variable.
But it is funny, why it appeared on CVF 6.5A ? when I compiled without temporary variables on CVF 6.5, the internal compiler error is nothing.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Because they've probably fixed something else ;-). To paraphrase a Murphy's law:
You can't fix something without simultaneously screwing up something else
Which is, believe me, more true the system gets bigger and more complex :-).
You can't fix something without simultaneously screwing up something else
Which is, believe me, more true the system gets bigger and more complex :-).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please do send us a source that shows the error.
Steve
Steve

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