Previous: Array I/O Up: Porting Fortran Next: VMS-Specific Code

VMS Fortran Extensions

VMS has many non-standard extensions to its Fortran compiler, which are used frequently in VICAR code. Some of these extensions are widely available in other vendors' Fortran compilers, while others are not. In general, only standard Fortran-77 code should be used in a portable program. To find out what is standard and what isn't, you could look at the ANSI Fortran standard, or you can look in the VAX Fortran Language Reference Manual. Anything printed in blue in that manual is non-standard Fortran and should not be used, except as noted below.

Some of the Fortran extensions are so useful that it would be impractical to write VICAR code without them. Fortunately, these extensions are common industry-wide and are available in the Fortran compilers for every machine MIPL is interested in. Therefore, some extensions to standard Fortran-77 are allowed. These extensions are listed below. You should not use any non-standard statements or features that are not mentioned below. If you absolutely have to, then make sure it is isolated in a machine-specific section of code, and you must provide a means for performing the same function on machines that don't have that extension. In other words, it's not worth it to use non-standard Fortran features.

These are the only allowed extensions: