Silverfrost Forums

Welcome to our forums

Silverfrost FTN95: Fortran for Windows version 9.20

13 Dec 2025 3:47 (Edited: 13 Dec 2025 3:49) #32550

We are pleased to announce the release of FTN95 version 9.20. This is available for download now to supported users.

New Features:

  • Extended precision for Win32 standard intrinsic erf and bessel functions has been added.
  • Allocate on assignment now requires the FTN95 command line option /AOA.
  • Complex ASIN and ACOS reworked with improved accuracy.
  • Fortran 2023 Standard intrinsics SIND, SINPI etc. added (both runtime and compile time).
  • Fortran 2003 attribute VOLATILE added (inhibits optimisation).
  • Fortran 2003 attribute ASYNCHONOUS is now tolerated but currently has no impact on the code.
  • Fortran 2003 INQUIRE(SIZE=...) has been added.
  • Fortran 2008 intrinsics LEADZ, TRAILZ, POPCNT and POPPAR have been added.
  • Fortran 2008 Format unlimited repeat count (asterisk) has been added.
  • x64 SET_BIT@, CLEAR_BIT@ and TEST_BIT@ have been extended to allow the second argument to be INTEGER*8.
  • ClearWin+ %eq[local_font] added.
  • ClearWin+ A new option [no_min_height] has been added for %co. This enables the use of %ts values less than 1.0 for edit controls %rd, %rf, %rs and %re
  • ClearWin+ The %pl scale:LINEAR,LOG_LINEAR,LINEAR_LOG or LOG_LOG can now be selected when configuring a %pl graph
  • ClearWin+ A new function EXPORT_WINDOW@ provides a simpler form for EXPORT_WINDOW_IMAGE@ SET_PLOT_MODE@ has been extended to allow the mode value of 2. This has the same effect as the value 1 but also provides a clipping rectangle when used with DRAW_SYMBOLSD@
  • ClearWin+ %pl[external] has been modified so that it can take a callback function when it is associated with a %gr region

-- Admin Silverfrost Limited
13 Dec 2025 3:48 #32551

Outline summary of some of the bugs that have been fixed:

  • Arguments of PURE functions must be INTENT(IN).
  • VALUE attribute not read from a MODULE for BIND_C interface.
  • INQUIRE statement is not recursive for x64.
  • ALLOCATE(CHARACTER(LEN=var)) was not working.
  • BACKSPACE was not working when the last line is not CR/LF terminated.
  • False error report for C_F_POINTER call.
  • Underflow compile time error for single precision.
  • False error report for a space in the code after OPERATOR(.
  • False error report in implied-do for array constructor calling a user function.
  • Failure for array section within an array constructor.
  • MOVE_ALLOC corrupts CONTAINS code when used on an argument.
  • Interface failure when passing an external function from one module subroutine to another.
  • A PROTECTED pointer was not protected.
  • Failure when casting to REAL or INTEGER within an array constructor.
  • NULLIFY was causing a crash.
  • Error reporting was failing for an exceptionally long line of code.
  • Allocate on assignment: Length of CHARACTER variable was incorrectly set to zero.
  • TINY was failing for extended precision.
  • Win32 array with size greater than 2GBs was giving an internal compiler error.
  • ClearWin+ %dd%rd regression fixed.
  • ClearWin+ %rf etc. did not have reduced height for %ts values less than 1.0.
  • ClearWin+ %pl CHANGE_PLOT_CHR@ accession violation on exit.
  • ClearWin+ %pl: exponent was missing for Win32 and log scale.
  • ClearWin+ %pl[external] was crashing.

-- Admin Silverfrost Limited
This forum is locked.