Please find below the short version of a program with an incorrect character assignment:
program testchar Implicit None Character (len=3), External :: WTPB03 Character (len=3) :: xxx
Type WTPROG_TA Character (len=3) :: BZ(40) End Type WTPROG_TA Type (WTPROG_TA) :: TAAKT
TAAKT%BZ(1) = 'abc' write (,) TAAKT%BZ(1)
! WTPB03 will not be called; '€€€' is assigned to BZ instead of 'xyz' TAAKT%BZ(1) = WTPB03 () write (,) TAAKT%BZ(1)
! WTPB03 will be called; correct assignment to BZ xxx = WTPB03 () TAAKT%BZ(1) = xxx write (,) TAAKT%BZ(1)
end program
Function WTPB03 () Implicit None Character (len=3) :: WTPB03 WTPB03 = 'xyz' END
I'm using version 6.00 of FTN95.