VAX Fortran Extensions

VAX Statement Extensions

ACCEPT
BYTE
DECODE
DO WHILE…END DO
DO…END DO
ENCODE
EXIT
IMPLICIT NONE
INCLUDE
OPEN statement extensions
ACCESS=’APPEND’
CARRIAGECONTROL=
DISP= (same as DISPOSE=)
DISPOSE= (or DISP=)
‘KEEP’ and ‘SAVE’
‘PRINT’ and ‘DELETE’
‘PRINT/DELETE’
‘SUBMIT
SUBMIT/DELETE’
MAXREC=
NAME=
NOSPANBLOCKS
ORGANIZATION=
RECORDSIZE= (same as RECL=)
READONLY
SHARED
TYPE= (same as STATUS=)
MAP…END MAP
NAMELIST
READ (NAMELIST directed)
RECORD
STRUCTURE…END STRUCTURE
TYPE
UNION…END UNION
VOLATILE
WRITE (NAMELIST directed)

VAX Data Type Extensions

BYTE
COMPLEX*16
DOUBLE COMPLEX
INTEGER*2
INTEGER*4
LOGICAL*2
LOGICAL*4
REAL*4
REAL*8
‘nnn’X and ‘nnn’O format for hexadecimal and octal constants

VAX Intrinsic Function Extensions

ACOSD
AIMAX0
AIMIN0
AJMAX0
AJMIN0
ASIND
ATAND
ATAN2D
BITEST
BJTEST
BTEST
CDABS
CDCOS
CDEXP
CDLOG
CDSIN
CDSQRT
COSD
DACOSD
DASIND
DATAND
DATAN2D
DCMPLX
DCONJG
DCOSD
[%]DESCR
DFLOAT
DFLOTI
DFLOTJ
DIMAG
DREAL
DSIND
DTAND
FLOATI
FLOATJ
IAND
IBCLR
IBITS
IBSET
IEOR
IIABS
IIAND
IIBCLR
IIBITS
IIBSET
IIDIM
IIDINT
IIDNNT
IIEOR
IIFIX
IINT
IIOR
IISHFT
IISHFTC
IISIGN
IMAX0
IMAX1
IMIN0
IMIN1
IMOD
ININT
INOT
IOR
ISHFT
ISHFTC
IZEXT
JIABS
JIAND
JIBCLR
JIBITS
JIBSET
JIDIM
JIDINT
JIDNNT
JIEOR
JIFIX
JINT
JIOR
JISHFT
JISHFTC
JISIGN
JMOD
JMAX0
JMAX1
JMIN0
JMIN1
JNINT
JNOT
JZEXT
LOC
MVBITS sub
NOT
[%REF]
SIND
SIZEOF
TAND
[%]VAL
ZEXT

Other VAX Fortran Extensions

Aggregate assignment
Comment lines beginning with “!”
Conditional compilation with “D” in column 1
DATA statements mixed with declarations
Edit descriptors without field widths
Extended range DO loops
Extended source lines with 132 columns (with -W option)
Initialization in declaration statements (i.e. INTEGER I/31/)
Initialization of COMMON blocks outside of BLOCK DATA
Nested INCLUDE statements
Non-INTEGER array and substring indexes
PARAMETER statements without ()
Symbol names may include “$” and “_” in names
Tab-Format source form (with V option)
VAX file names for implicit unit connections to a file
– O Z Q $ edit descriptors