Sector7 provides vms-nt migration and vms-unix migration for companies around the world. Sector7's unique tools and services have assisted companies web enable applications, rehosting porting reengineering, application migration, and server consolidation since 1985. If your company has need of vms-nt migration, vms-unix migration, web enable applications, rehosting porting reengineering, application migration, or server consolidation, Sector7 has the total solution. Sector7 offers tools for companies to buy and use themselves, as well as complete migration services encompassing vms-nt migration, vms-unix migration, web enable applications, rehosting porting reengineering, application migration, and server consolidation.
VX/FPT - Reports
FPT generates reports for program documentation.
They include:
- File list: The list of files which make up the program
- Sub-program list: The sub-programs, showing the arguments
- Call structure: The call relationships of each sub-program and call tree
- Symbol table: organised alphabetically for the entire program
- COMMON block listing: organised in address order
- The resource listing: the program size and the FPT resources required
Diagnostic reports are also generated by the quality assurance checks, which show inconsistencies in sub-program arguments, COMMON block organisation, memory alignment, data initialisation and related issues. Please see Quality Assurance for descriptions of the checks carried out.
File List
FPT lists the files which make up the program. The complete file specification is shown, and FPT indicates whether the file is a primary file, and INCLUDE file, a library file (and whether the file is used) or a template file, used only by FPT and not required when the program is built. For example:
Input Files =========== F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DLX.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\CALCTIME.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\CHAR4.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\COMT.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DL_WDATS.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DL_WSEP.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\RDCODE.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\YES_ANS.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\NEXTPACK.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\READFILE.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DL_WASCI.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DL_WMATL.FOR F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\FPT\INTERACT.FTM Template F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\DATASTOR.CMN Include file F:\BASELINE\PRODUCTS\DLX\VNEW_VER\VFORTRAN\XDATS.CMN Include file D:\ACL\ACL\ALC_LIB\WWRITE.FOR Library D:\ACL\ACL\ALC_LIB\WREAD.FOR Library D:\LIBS\CONCEPT.FOR Unused library |
Sub-program List
The sub-programs are listed in alphabetical order, showing the sub-program declaration statement and arguments. For example:
Sub-program Listing
===================
SUBROUTINE CALCTIME(RUNNO,STREAMNO,LOGINT,
1 KTIME,RTIME,N_VAR)
Arguments
RUNNO CALCTIME Formal Input Argument
INTEGER *4
STREAMNO CALCTIME Formal Input Argument
INTEGER *4
LOGINT CALCTIME Formal Input Argument
INTEGER *4
KTIME CALCTIME Formal Input Argument
INTEGER *2 (*)
RTIME CALCTIME Formal Input-Output Argument
REAL *4 (1:50000)
N_VAR CALCTIME Formal Input Argument
INTEGER *4
-------------------------------------------------------------------------------
CHARACTER*4 FUNCTION CHAR4(KCONCEPT)
CHARACTER*4 CHAR4
Arguments
KCONCEPT CHAR4 Formal Input Argument
INTEGER *4
:
:
|
Call Structure
FPT lists the sub-programs alphabetically, showing the call relationships between them. For example:
Call Relationships
==================
SUBROUTINE CALCTIME
-------------------
Called by:
DL_WMATL DL_WASCI DL_WSEP DL_WDATS
Sub-programs Called:
YES_ANS
FUNCTION CHAR4
--------------
Called by:
NEXTPACK
Sub-programs Called:
None
SUBROUTINE COMT
---------------
Called by:
NEXTPACK
Sub-programs Called:
None
PROGRAM DLX
-----------
Sub-programs Called:
IOSARGUMENT IUPPERCASE IACTUALLENGTH IOSDIRCHANGE IOSDATE
IOSTIME ISTRINGTOINTEGER YES_ANS NEXTPACK
DL_WASCI DL_WMATL DL_WSEP DL_WDATS
:
:
|
The call tree is shown for each program and for each sub-program which is not called. The depth of the tree displayed is controlled by the user. For example:
Call Tree: DLX
==============
0 DLX
1 ! IOSARGUMENT
1 ! IUPPERCASE
1 ! IACTUALLENGTH
1 ! IOSDIRCHANGE
1 ! IOSDATE
1 ! IOSTIME
1 ! ISTRINGTOINTEGER
1 ! YES_ANS
1 ! NEXTPACK
2 ! ! READFILE
2 ! ! CHAR4
2 ! ! COMT
2 ! ! YES_ANS
2 ! ! RDCODE
1 ! DL_WASCI
2 ! ! IOSDIRMAKE
2 ! ! INFOERROR
2 ! ! CALCTIME
3 ! ! ! YES_ANS
1 ! DL_WMATL
2 ! ! IOSDIRMAKE
2 ! ! INFOERROR
2 ! ! CALCTIME
3 ! ! ! YES_ANS
2 ! ! IACTUALLENGTH
:
:
|
Symbol Table
The symbol table is shown in alphabetical order, collated for the entire program. For example:
Symbol Table
============
Name Sub-prog/Struct Use/COMMON Address Type Size Value/Bounds
---- --------------- ---------- ------- ---- ---- ------------
ABSVAL RDCODE Local INTEGER *4
ASK_RUN DLX Local LOGICAL *4
ASK_STREAM DLX Local LOGICAL *4
ASK_VAR DLX Local LOGICAL *4
BASE_STOR DLX Local INTEGER *4
BATCHRUN READFILE Formal Input Argument
LOGICAL *4
BATCHRUN DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
DATASTOR 1526828 LOGICAL *4
C COMT Formal Input Argument to Statement Function: ISCOM
CHARACTER *1
C COMT Formal Input Argument to Statement Function:
ISLETTER CHARACTER *1
C COMT Formal Input Argument to Statement Function: ISDIGIT
CHARACTER *1
CALCTIME Global Subroutine UNTYPED
:
:
|
COMMON Listing
FPT lists the objects in COMMON blocks in address order. For example:
Common Block Address Allocation
===============================
COMMON DATASTOR
Address Sub-progs Name Type Size Bounds Access
------- --------- ---- ---- ---- ------ ------
0 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
N_STREAM INTEGER *4 R W
4 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
N_TIMES INTEGER *4 R W
8 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
TIM_BASE INTEGER *4 (1:10) R W
48 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
N_VBL INTEGER *4 R W
52 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
N_DATA INTEGER *4 R W
56 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
K_VBL INTEGER *4 (1:184,1:10) R W
7416 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
N_VARS INTEGER *4 (1:10) R W
7456 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
DAT_BASE INTEGER *4 (1:1840) R W
14816 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
K_TIME INTEGER *2 (1:756000) R W
1526816DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
KSTD_FRM INTEGER *4 R W
1526820DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
ERRLEVEL INTEGER *4 R W
1526824DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
ERRREPRT INTEGER *4 R W
1526828DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
BATCHRUN LOGICAL *4 R W
1526832DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
OUT_DATS2 LOGICAL *4 R W
1526836DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
R_DATA REAL *4 (1:1080000) R W
COMMON DATASTCH
Address Sub-progs Name Type Size Bounds Access
------- --------- ---- ---- ---- ------ ------
0 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
TRIALNME CHARACTER *8 R W
8 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
TRIAL_ID CHARACTER *32 R W
40 DL_WMATL,DL_WASCI,NEXTPACK,DL_WSEP,DL_WDATS,CALCTIME,DLX
OUPT_DIR CHARACTER *60 R W
:
:
|
Resource Listing
FPT shows the resources which it has used. The program size is reported as the number of lines of code, the number of comment lines and the number of statements.
A diagnostic summary is reported, and contains a measure of code quality. This is computed as a weighted sum of the number of errors and warnings per thousand lines of input (the 'millibug').
The FPT run-time is also reported. Note that the long total run-time in this case was incurred because FPT was run interactively. Most of the time was spent waiting for the user.
Resource Available Used Remaining Percentage
Memory buffers 2500 34 2466 98.64
Files 1
Sub-programs 1
Statements 6
Symbol table 3
Name table 4
Statement label table 1
COMMON block table 1
Array dimension table 1
Cross reference table 2
Other linked lists 1
Real numbers 0
Program code 13
Disk buffer records 2500 4 2496 99.84
Comment records 4
Disk record accesses 41
Dictionary character storage 2000000 15507 1984493 99.22
Input lines processed 3044
Code lines 1795
Comment lines 1249
Statements 1568
*******************************************************************************
Execution Time
FSMINI - Initialisation 0.06
READDP - Analysis of DATAPOOL Listing 0.00
LEXER - Lexical analysis 0.27
SSA - Static semantic analysis 0.17
IGNMSZ - Ignoring defaulting of sizes 0.00
FSWRSM - Writing of symbol table 0.22
FSWRCM - Writing of COMMON allocation 0.05
SHOSBP - Report of sub-programs 0.28
COMPSI - Comparison of sub-programs 0.00
FPTCAL - Report of call structure 0.11
CONLIN - Checking of continuation lines 0.00
FPTSIZ - Data size conversion 0.00
CHANGE - Systematic code changes 0.00
DECALL - Revision of declarations 0.00
CHAPAR - Revision PARAMETER declarations 0.00
RENSYM - Renaming of symbols 0.00
ACCDBA - Building access database 0.00
INSRTT - Inserting run-time trace 0.00
ALICHK - Alignment check 0.00
EQVCHK - Equivalence check 0.00
NAMCHK - Name usage consistency check 0.00
ARGCHK - Argument consistency check 0.00
USECHK - Symbol usage check 0.00
TYPCHK - Data type coercion check 0.00
FPTINL - Sub-program inline expansion 0.00
DADICT - Construction of Data Dictionary 0.00
NMLGEN - Building NAMELIST for COMMONS 0.00
UNWIND - Unwinding of DO loops 0.00
FPTRNL - Renumbering of labels 0.00
ADPART - AD100 Partitioning 0.00
FSWRIT - Writing of output 0.66
RESRPT - Resource reporting 0.06
Total Elapsed Time 172.48
Diagnostic Summary
Total diagnostics 0 Highest severity 0
Code Quality Index
Error weighting 10
Total lines 3044
Index per 1000 lines 0.000
No errors detected
End of processing
|
For further information, please refer to the VX/FPT Reference Manual or contact Sector7.

