Dear Readers:
Alvaro Fernandez wrote:
> I am compiling some third party software written in Fortran 95 on an
> Absoft 8.0 compiler. The code in question has several where() blocks
> with labels. For example:
>
>
>
> valid_times: where( statistics% valid)
>
>
>
> elsewhere valid_times
>
> statistics% speedup = 0.0
>
> end where valid_times
>
>
>
> The error I get is:
>
>
>
> cf90-7 f90fe: ERROR ESTIMATE_CACHE_SIZES, File = ..\Coco\make_pm.f95,
> Line = 3993, Column = 17
>
> A construct name is not allowed on a WHERE construct statement.
>
>
>
> My copy of "Fortran 90/95 explained" would seem to indicate otherwise.
> Am I missing something?
>
>
>
> Alvaro Fernandez
>
>
>
The Fortran 95 standard most definitely allows optional construct
names on the WHERE, ELSEWHERE, and END WHERE statements. See rules
R740, , R744, R745, and R746. There is a constraint requiring a
construct name on an all-or-nothing basis. See Fortran 95 Standard
[111:38 - 112:11].
Either this is a compiler bug or else the source code has a
construct name in some statements, but not others for the same WHERE
construct.
--
Sincerely,
Craig T. Dedo
17130 W. Burleigh Place E-mail: [log in to unmask]
Brookfield, WI 53005-2759 Voice Phone: (262) 783-5869
USA Fax Phone: (262) 783-5928
"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety." -- Benjamin Franklin
(1759)
|