Fortran - 1.0


Compatibility: v2 v3 Express
What's new? Release Notes
ID: com.castsoftware.fortran

Description

This extension provides support for applications written using Fortran languages.

In what situation should you install this extension?

If your application contains source code written using Fortran and you want to view these object types and their links with other objects, then you should install this extension.

Supported Fortran versions

This version of the extension provides support for:

Fortran Supported
Fortran 77
Fortran 90
Fortran 2003

Transactions

Transaction support is derived from metamodel concepts used to build CAST Imaging Blueprint and structural transaction flows. Entry Points start transactions; Exit Points include both output/boundary concepts and Data Entities manipulated by transactions.

Role Support Breakdown
Entry Point No direct concept type details
Exit Point No direct concept type details

Data version: 1.0.2

ISO 5055 Structural Rules

Quality support is based on ISO 5055 structural rules available for the selected extension version.

Reliability Maintainability Security Performance Efficiency

Data version: 1.0.2

Supported file types

Only files with following extensions will be analyzed:

  • *.for
  • *.FOR
  • *.inc
  • *.INC
  • *.pfo
  • *.PFO
  • *.f
  • *.F
  • *.f03
  • *.F03
  • *.f90
  • *.F90
  • *.f77
  • *.F77
  • *.h (.h files are used as include files, however for the most part, *.inc are used as include files) 

Below is the list of extensions that will enable you to tell what type of Fortran is provided:

Fortran version Extension
Fortran 2003 *.f03, *.F03
Fortran 90 *.f90, *.F90, *.g90, *.f95, *.F95, *.g95, *.f, *.F, *.for, *.FOR
Fortran 77 *.f77, *.F77, *.g77

Download and installation instructions

The extension will be automatically downloaded and installed when at least one of the supported file types is delivered for analysis.

Source code discovery

A discoverer is provided with the extension to automatically detect Fortran code: when one of the supported file types is found in a folder, one “Fortran” project will be discovered, resulting in a corresponding Universal Technology Analysis Unit.

Tools

Fortran Preprocessor

Fortran source code needs to be preprocessed so that CAST can understand it and analyze it correctly. This code preprocessing is actioned automatically when an analysis is launched or a snapshot is generated (the code is preprocessed before the analysis starts). The Fortran Preprocessor log file is stored in the following location:

%PROGRAMDATA%\CAST\CAST\Logs\<application_name>\Execute_Analysis_<guid>\com.castsoftware.fortran.<_extension_version>.prepro_YYYYMMDDHHMMSS.log

What results can you expect?

Objects

Type Metamodel description
Fortran Interface Fortran Interface
Fortran Module Fortran Module
Fortran External Function Fortran External Function
Fortran External Subroutine Fortran External Subroutine
Fortran Internal Function Fortran Internal Function
Fortran Internal Subroutine Fortran Internal Subroutine
Fortran Program Fortran Program
Fortran IOSTAT variable Fortran IOSTAT variable
Fortran STAT variable Fortran STAT variable

Quality rules

You can also find a global list here:

https://technologies.castsoftware.com/AIP/technologies/1006000external link

Exceptions

The following rules/metrics are not triggered during a Fortran analysis:

  • Class Fan-in distribution
  • Class Fan-out distribution
  • Class Complexity distribution
  • SQL Complexity distribution
  • OO Complexity distribution
  • Copy/Paste metrics
  • Other generic diagnostics