View previous topic :: View next topic |
Author |
Message |
Thomas
Joined: 18 Feb 2005 Posts: 47 Location: Gummersbach, Germany
|
Posted: Tue Feb 09, 2021 11:29 am Post subject: Internal compiler error (only with /64 option) |
|
|
The following simplified source code creates an "Internal compiler error" when compiled with /64 and /check
Subroutine DRGD2Z (PSZL)
Character(len=*) :: PSZL(*)
Character(Len=10), External :: DRUTBQ
PSZL(1)(52:61) = DRUTBQ(1)
END
Without /64 no error appears.
The error can be avoided with an additional assignmnet:
Subroutine DRGD2Z (PSZL)
Character(len=*) :: PSZL(*)
Character(Len=10), External :: DRUTBQ
Character(Len=10) :: xxx
xxx = DRUTBQ(1)
PSZL(1)(52:61) = xxx
END _________________ Thomas |
|
Back to top |
|
 |
PaulLaidler Site Admin

Joined: 21 Feb 2005 Posts: 7770 Location: Salford, UK
|
Posted: Tue Feb 09, 2021 12:36 pm Post subject: |
|
|
Thomas
Thank you for this bug report. I have made a note that it needs fixing. |
|
Back to top |
|
 |
PaulLaidler Site Admin

Joined: 21 Feb 2005 Posts: 7770 Location: Salford, UK
|
Posted: Wed Feb 10, 2021 5:07 pm Post subject: |
|
|
This failure has now been fixed for the next release of FTN95. |
|
Back to top |
|
 |
JohnCampbell
Joined: 16 Feb 2006 Posts: 2505 Location: Sydney
|
Posted: Thu Feb 11, 2021 4:02 am Post subject: |
|
|
Does Subroutine DRGD2Z (PSZL) need an interface for using PSZL ?
Character(len=*) :: PSZL(*)
Perhaps (len=*) is always provided, so PSZL(*) is an array of unknown size.
So, len(PSZL(1)) is available, but size(PSZL) is not.
I would be interested if the following works.
Code: | Subroutine DRGD2Z (PSZL)
Character(len=*) :: PSZL(*)
Character(Len=10), External :: DRUTBQ
if (len(PSZL(1)) >= 61) then
PSZL(1)(52:61) = DRUTBQ(1)
else
write (*,*) 'len(PSZL) =',len(PSZL(1)),' too small'
end if
END |
|
|
Back to top |
|
 |
PaulLaidler Site Admin

Joined: 21 Feb 2005 Posts: 7770 Location: Salford, UK
|
Posted: Thu Feb 11, 2021 8:06 am Post subject: |
|
|
The original code provided by Thomas compiles in 32 bits and in 64 bits without /CHECK so FTN95 can be used to investigate any limitations. |
|
Back to top |
|
 |
John-Silver

Joined: 30 Jul 2013 Posts: 1520 Location: Aerospace Valley
|
Posted: Sat Feb 13, 2021 2:04 am Post subject: |
|
|
Paul, what was the reason for the failure ? _________________ ''Computers (HAL and MARVIN excepted) are incredibly rigid. They question nothing. Especially input data.Human beings are incredibly trusting of computers and don't check input data. Together cocking up even the simplest calculation ... " |
|
Back to top |
|
 |
|