Programs for Programmers

plusFORT V7.20


Fortran Analysis and Refactoring with plusFORT V7.20

plusFORT, from Polyhedron Solutions, is a multi-purpose suite of tools for analyzing and improving Fortran programs. It combines restructuring and reformatting with global static analysis, dynamic analysis and many other features in a single powerful package. plusFORT is a one-stop solution for programmers, project managers, and quality assurance engineers working with Fortran source code.

Try the new V7 GXCHK report interface by clicking here.

New for V7.20 released Jan 2018

plusFORT now includes an additional new tool:

HyperKWIC is a tool for generating software documentation that combines the instant connectivity of hypertext with the analytical strengths of KeyWord In Context. It produces HTML documents that provide a fully interactive alternative to traditional documentation. HyperKWIC may be used to document source code written in Fortran, C, C++, Delphi or any other mainstream language.

You can interact with sample HyperKWIC reports for large Fortran and C programs by clicking here and here. HyperKWIC reports can be viewed on any system with a reasonably capable web browser, including tablets and smart-phones.

In addition Version 7.20 brings numerous bug fixes and enhancements including the following:-

  • Bugs in SPAG processing of WHERE and FORALL constructs and statements fixed.
  • Regression in SPAG treatment of a complex inheritance scenario fixed.
  • Improved error reporting in SPAG for some non-standard code.
  • Improved SPAG treatment of C pre-processor code, including multi-line directives.
  • It’s no longer possible for SPAG to write fixed form output with a left margin before column 7.
  • SPAG no longer makes multiple copies of comments on lines with multiple statements.
  • SPAG produces a message when code beyond the right margin is truncated and the default right margin for free-source form code is increased to 512.
  • Improved error reporting when attempting to convert COMMON blocks to MODULEs.
  • Manual updated to revision K.

New for V7.10 released April 2017

Check out our new video tutorials which explore some of the many capabilities of plusFORT, and showcase PFFE, the plusFORT front end which offers a genuinely intuitive graphical interface for the plusFORT tools.

DON’T forget to turn your sound on!  We recommend switching to full screen view if you want to follow the details.

A major update with many improvements affecting usability and compatibility of plusFORT.


  • PFFE (the plusFORT graphical interface)  is now available for Linux and Mac.
  • PFFE stability and usability enhancements
  • New default behaviour for SPAG output files (restructured output, symbol files, coverage files, and module files). Instead of being written to the source directory, SPAG creates a subdirectory called SPAGged (or as specified in option 229 of spag.fig) and writes them there. Restructured output files have the extension .f90 (or .for if item 141 is set to 0) instead of .spg. If option 229 is set, items 230, 231, 232, 234 and 236 are over-ridden. The original (pre 7.10) behaviour is restored if item 229 is absent from spag.fig.
  • Dynamic analysis instrumentation code rewritten to deal correctly with Fortran 95 allocatable arrays, KINDs, and the use of array
  • Bug fixes in coverage analysis code to allow it to deal correctly with Fortran 95 modules.
  • Probe routines rewritten and enhanced in Fortran 95 (in file probes.f90).
  • Timing probe and report enhancements.
  • SPAG copies probes.f90 to the output directory when instrumenting source for coverage analysis or dynamic analysis. probes.f90 must be compiled and linked with the instrumented code when creating executables for dynamic or coverage analysis.
  • Default for SPAG configuration option 56 (location of INCLUDE files with no specified path changed to 1 (same directory as source file).
  • New option for name of target executable in AUTOMAKE on Windows creates an executable with the name derived from the current working directory name.
  • Manual updated to revision J. including a new section on PFFE.


New features for V7 - released Nov 2016:

  • Initial release of Version 7
  • New GXCK HTML reports
  • New Modularization Report in GXCHK
  • New "Per Symbol" reporting in GXCHK.
  • Unicode output in GXCHK for improved rendering of call trees etc.
  • Many changes and bug fixes to improve compatability of SPAG and GXCHK
  •   with Fortran 95.
  • SPAG infers source form from source file extension
  • Multiple 215= allowed in SPAG.fig to allow for complex build
  •   environments with many directories containing INCLUDE files.
  •   options in QMERGE.
  • If no SELECT= is specified, QMERGE now defaults to prompting, rather
  •   than performing a simple merge.
  • Substantial changes to manual - now at Revision H