Robin wrote:
>>Date: Sun, 28 Mar 2004 21:58:36 -0500
>>From: Jean Vezina <[log in to unmask]>
>
>
>>Here is another case that cause problems with some compilers:
>>
>>character*5 a
>>call test(a,'123')
>>print *,a
>>end
>>subroutine test(a,b)
>>! the problem statement is the IMPLICIT
>>implicit character(*) (a-z)
>>a = b
>>end
>>
>>The problematic statement is the IMPLICIT CHARACTER(*). I think this
>>was prohibited in Fortran 77, but in Fortran 95 ?
>
>
> Should be OK.
> But what about an explicit interface etc?
I agree. It was not allowed in Fortran 77, but is allowed in Fortran 95 provided
the interface is explicit. So your program is not legal but can be made so by
adding an interface block or by putting subroutine test inside the main program.
John Reid.
|