Joined: 29 Nov 2006
|Posted: Fri Dec 23, 2005 4:25 am Post subject: Salford FTN95: Fortran for Windows Version 4.90
|The following is a summary of new FTN95 features at version 4.9:
* NEW FEATURE: /LOCAL_ZERO added for .NET only. Like /ZEROISE but for local variables. Cannot be used with /UNDEF.
* NEW FEATURE: Size of /UNDEF executable reduced for .NET MODULE containing large array.
* NEW FEATURE: Size of .NET DLL reduced when it contains a large MODULE array.
* NEW FEATURE: NET OBJECTs can now be initialised when declared.
* NEW FEATURE: REAL assigned to hexadecimal value now generates a warning.
* NEW FEATURE: /F_STDCALL option added for Win32 - details to follow.
The following is a summary of FTN95 bugs that have been fixed at version 4.9:
* Missing member initialation in array elements of user-defined TYPE.
* INQUIRE(PAD=...) missing.
* Runtime problem with SHAPE intrinsic - arrays erroneously reported as not conforming.
* Corrupt header of very large record in unformatted IO.
* INTEGER i = 'F' does not generate warning or code for .NET.
* /OPT failure with benchmark test
* INTENT(OUT) fails for .NET objects with /CHECK.
* FORALL construct gives incorrect results for multiple "overlapping" assignments.
* FORALL construct expanded incorrectly.
* Call to routine with optional arguments fails under /CHECK.
* False error report with MVBITS.
* NET false runtime error "Array subscript > upper bound".
* False compilation error "Duplicate sub-program name".
* Problem with implied-DO in PARAMETER initialisation.
* /OPT failure - mixed REAL*4 and REAL*8 in DO-loop assignment.
* False compilation error for computed GOTO with integer expression.
* /STATISTICS gives floating point exception for "zero" elapsed time.
* /INTS should not over-ride INTEGER*4.
* INTENT(IN) problem with /CHECK and .NET DLL.
* Problem with different TYPEs with same member name.
* Garbage collection problem under .NET.
* Temporary array overwrites allocated array.
* False /CHECK runtime error "Too few array elements".
* Member of TYPE falsely reported as missing.
* False error report with pointer assignment.
* TYPE constructor fails when passing a pointer.
* INQUIRE gives error when calculating IOLENGTH of TYPE.