Software Product Description ________________________________________________________________ PRODUCT NAME: VAX FORTRAN, Version 5.6 SPD 25.16.36 DESCRIPTION VAX FORTRAN is an implementation of full language FORTRAN-77 conforming to American National Standard FORTRAN, ANSI X3.9- 1978. It includes optional support for programs conforming to the previous standard, ANSI X3.9-1966. VAX FORTRAN meets the Federal Information Processing Standard Publication (FIPS-69-1) requirements by conforming to the ANSI Standard and by including a flagger. The flagger optionally produces diagnostic messages for compile-time elements that do not conform to the Full-Level ANSI FORTRAN X3.9-1978 Standard. VAX FORTRAN also conforms to the International Standard ISO 1539-1980(E). VAX FORTRAN conforms to MIL-STD 1753 with the exception of the specific syntax for octal and hex constants. The sharable, reentrant compiler operates under the VMS Op- erating System. It globally optimizes source programs while taking advantage of the VAX floating point and character string instruction set and the VMS virtual memory system. VAX FORTRAN includes the following enhancements to the ANSI standard: o Directives to support parallel decomposition of DO-loops on multiprocessor VMS systems o Directives to control listing page titles and subtitles, object file identification field, and some attributes of common blocks DIGITAL January 1991 AE-JF87L-TE VAX FORTRAN, Version 5.6 SPD 25.16.36 o Composite data declarations using STRUCTURE, END STRUC- TURE, and RECORD statements, and access to record components through field references o A set of data types beyond those specified for full language FORTRAN-77: - LOGICAL*1, BYTE - LOGICAL*2 - INTEGER*2 - COMPLEX*16, DOUBLE COMPLEX - REAL*16 o Explicit specification of storage allocation units for data types (e.g., REAL*8, INTEGER*4) o Data initialization in type declaration statements o IMPLICIT NONE statement o INCLUDE statement o NAMELIST-directed I/O o 31-character identifiers that can include dollar sign ($) and underscore (_) o DO WHILE and ENDDO statements o Bit manipulation functions o Language elements for keyed and sequential access to VAX RMS indexed organization files o Hexadecimal and octal constants and Z and O format edit descriptors applicable to all data types o ENCODE and DECODE statements o ACCEPT and TYPE input/output statements o DEFINE FILE statement o USEROPEN subroutine invocation at file OPEN time 2 VAX FORTRAN, Version 5.6 SPD 25.16.36 o Comments allowed at end of each source line o Debug statements in source o Language elements that support the VAX extended range and extended precision floating point architectural features: - 64-bit G_floating data type, with an 11-bit exponent and 53-bit mantissa, which provides a range of 0.56*10**-308 to 0.09*10**308 and a precision of 15 decimal digits - 128 bit H_floating data type, with a 15-bit exponent and a 113-bit mantissa, which provides a range of 0.84*10**-4932 to 0.59*10**4932 and a precision of 33 decimal digits Additional Features o Generation of optional diagnostic messages for extensions not supported by Digital's ULTRIX and VAXELN Operating Systems o Support for translation of VAX CDD/Plus records into FORTRAN records o Support for calls to VMS system service procedures o Generation of symbol tables for the VAX Symbolic Debugger o Generation of Cross Reference Listings o Generation of sharable code o Up to 255 actual arguments in a CALL statement o Up to 250 named COMMON blocks per subprogram o Support for providing error diagnostics to the VAX Language- Sensitive Editor component and cross-reference information to the VAX Source Code Analyzer component of VAX Language- Sensitive Editor/Source Code Analyzer o Support for low level program design, including the process- ing of pseudocode and the extraction of design information from comments 3 VAX FORTRAN, Version 5.6 SPD 25.16.36 The VAX FORTRAN compiler provides a multi-phase optimizer that is capable of performing optimizations across entire program units. Specific optimizations performed include: o Constant folding o Optimizations of arithmetic IF, logical IF, and block IF- THEN-ELSE o Global common subexpression elimination o Removal of invariant expressions from loops o Global allocation of general registers across program units o In-line expansion of statement functions o Optimization of array addressing in loops o Value propagation o Deletion of redundant and unreachable code Note: VAX FORTRAN does not support the use of FDML statements within parallel DO-loops. HARDWARE REQUIREMENTS VAX, MicroVAX, VAXstation, or VAXserver configuration as speci- fied in the System Support Addendum (SSA 25.16.36-x). SOFTWARE REQUIREMENTS For Systems Using Terminals: (No DECwindows Interface) VMS Operating System For Workstations Running VWS: VMS Operating System VMS Workstation Software For Workstations Running DECwindows: 4 VAX FORTRAN, Version 5.6 SPD 25.16.36 VMS Operating System (and necessary components of VMS DECwin- dows) VAX FORTRAN supports a DECwindows compiler interface for com- pile qualifier selection on workstations. This interface is accessible from FileView. * Refer to the System Support Addendum (SSA 25.16.36-x) for availability and required versions of prerequisite/optional software and for information regarding components of VMS DECwindows. ORDERING INFORMATION Software Licenses: QL-100A*-** Software Media: QA-100A*-** Software Documentation: QA-100AA-GZ Software Product Services: QT-100A*-** * Denotes variant fields. For additional information on avail- able licenses, services, and media, refer to the appropriate price book. SOFTWARE LICENSING This software is furnished under the licensing provisions of Digital Equipment Corporation's Standard Terms and Conditions. For more information about Digital's licensing terms and poli- cies, contact your local Digital office. LICENSE MANAGEMENT FACILITY SUPPORT This layered product supports the VMS License Management Facil- ity. License units for this product are allocated on a CPU-capacity basis. 5 VAX FORTRAN, Version 5.6 SPD 25.16.36 For more information on the License Management Facility, refer to the VMS Operating System Software Product Description (SPD 25.01.xx) or the VMS Operating System documentation set. For more information on Digital's licensing terms and policies, contact your local Digital office. SOFTWARE PRODUCT SERVICES A variety of service options are available. For more informa- tion, please contact your local Digital office. SOFTWARE WARRANTY Warranty for this software product is provided by Digital with the purchase of a license for the product as defined in the Software Warranty Addendum of this SPD. [TM] The DIGITAL Logo, DECwindows, MicroVAX, RMS, ULTRIX, VAX, VAX CDD, VAXcluster, VAXELN, VAX FORTRAN, VAXft, VAXserver, VAXstation, and VMS are trademarks of Digital Equipment Corporation. 6