Digital PDFs
Documents
Guest
Register
Log In
AV-M763B-TE
September 1984
108 pages
Original
15MB
view
download
Document:
VAX FORTRAN Language Summary
Order Number:
AV-M763B-TE
Revision:
000
Pages:
108
Original Filename:
OCR Text
September 1984 VAX FORTRAN Language Summary Order No. AV-M7638 -T E HOW TO ORDER ADDITIONAL DOCUMENTATION In Cont inental USA and Puerto Rico call 800- 258- 1710 In New Hampshire. Alaska. and Hawaii ca ll 603 - 884-6660 In Canada ca ll 613 - 234 - 7726 (Ottawa- Hull) 800-267 - 6146 (all other Canadian) DIRECT MAIL ORDERS (USA & PUERTO RICO)· Digital Equipment Corporation PO. Box CS2008 Nashua. New Hampshire 03061 DIRECT MAIL ORDERS (CANADA) Digital Equipment of Canada Ltd 940 Belfast Road Ottawa. Ontario K 1G 4C2 Attn: A&SG B USiness Manager DIRECT MAIL ORDERS (INTERNATIONAL) Digital Equipment Corporation A&SG Business Manager cIa Digital's local subsidia ry or approved distributor • An y prepaid order from Puerto Rico musl be placed with the local Digital subsidia r y (809 - 754-7575) Internal or ders should be placed through the Software Distribution Center (S OC) . Digital Equipment Corporation. Northboro. Massachusetts 01532 digital equipment corporation· maynard, massachusetts First Printing, October 1982 Revised, September, 1984 The information in this document is subject to change without notice and should not be construed as a commitment by Digital Equipment Corporation. Digital Equipment Corporation assumes no responsibility for any errors that may appear in this document. The software described in this document is furnished under a license and may be used or copied only in accordance with the terms of such license . No responsibility is assumed for the use or reliability of software on equipment that is not supplied by Digital Equipment Corporation or its affiliated companies. Copyright © 1982, 1984 by Digital Equipment Corporation. All Rights Reserved . Printed in U.S .A. The following are trademarks of Digital Equipment Corporation: DEC DEC/CMS DEC/MMS DECnet DECsystem- l0 DECSYSTEM-20 DECUS DECwriter DIBOL EduSystem lAS MASSBUS MICRO/PDP-ll Micro/RSX MicroVMS PDP PDT RSTS RSX TOPS-20 UNIBUS VAX VMS VT ~D~DDmD ZK2611 Contents Preface . Manual Objectives . . . . . Associated Documents. Symbols and Conventions Page · iv · iv · iv · iv Command Formats . . . . FORTRAN Command LINK Command. . . LIBRARY Command. .4 Language Summary. . . . Order of Statements . Statements . . . . . · 7 · 7 .8 VAX FORTRAN Expression Operators. 22 VAX Symbolic Debugger Command Summary. . 24 · 1 · 1 .3 VAX FORTRAN Generic and Instrinsic Functions 32 VAX FORTRAN Run-Time Error Summary. 45 Character Sets . . . . . . . . . . . . . Standard FORTRAN Character Set. VAX FORTRAN Character Set. ASCII Character Set . . . . . . . . 48 48 48 Precedence of Operators. . . . . . . . . Generic and Instrinsic Functions. . . . . Summary of FORTRAN Run-Time Errors 22 32 49 Tables 45 Figure Required Order of Statements and Lines. . . . . . . . . . . . . . . . . . . . 7 iii Preface Manual Objectives The VAX FORTRAN Language Summary is intended as a quick reference for use when you are writing FORTRAN programs, and not as a formal or complete description of the language. Associated Documents The following documents contain more detailed information: • The Programming in VAX FORTRAN contains detailed reference information on the VAX FORTRAN language elements summarized in this booklet. • The VAX FORTRAN User's Guide contains detailed VAX FORTRAN information on using the VAXNMS operat ing system. For a list of other related VAXNMS documents, see the VAX/VMS Master Index and the Introduction to the VAX/VMS Document Set. Symbols and Conventions • Brackets ( [ 1 ) enclose optional language elements. Long brackets enclose lists of elements from which one and only one element may be chosen. • Braces ( II ) enclose lists of items from which on'e and only one item must be chosen. • Horizontal ellipses (, ... ) indicate that additional parameters, options, or values can be entered. When a comma precedes the ellipses, it indicates that successive items must be separated by commas . • Text in blue ink describes language features that are VAX extensions to the FORTRAN-77 standard. iv Command Formats FORTRAN Command The FORTRAN command compiles one or more FORTRAN source programs into separate object modules, or concatenates and compiles one or more programs into a single object module. You can also specify text libraries to search for modules specified by INCLUDE st atements in the source files. By default, FORTRAN searches: 1. Libraries specified on the FORTRAN command in the order they are specified. 2. The library associated with the logical name FOR$LIBRARY, if a logical name assignment exists for FOR$LIBRARY. 3. FOR$LIBRARY:FORSYSDEF.TLB. FORTRAN Command Format FORTRAN[/qualifier ... ] file-spec[/qualifier ... ], ... Command Qualifiers /[NO]CHECK[=option] /CONTINUATIONS=n /[NO]CROSS-REFERENCE /[NO]DEBUG[=option] /[NO]D--LINES /DML /[NO]EXTEND_SOURCE /[NO]F77 Default /CHECK=(NOBOUNDS, OVERFLOW, NOUNDERFLOW) /CONTINUATIONS=19 /NOCROSS-REFERENCE /DEBUG=(NOSYMBOLS ,TRACEBACK) /NOD-LINES /NOEXTEND_SOURCE /F77 VAX FORTRAN Language Summary Command Qualifiers Default /[NO]GJLOATING /[NO]l4 /LIBRARY /[NO]LIST[=file-spec] /NO G-FLOATING /[NO]MACHINE_CODE /[NOJOBJECT[=file-spec] /[NO]OPTIMIZE /[NO]SHOW[=(option[, ... ])] /[NO]STANDARD[=(option[, ...])] /[NO]WARNINGS[=(option[, ... J)] /14 /NOLIST (interactive default) !LIST (batch default) /NOMACHINE_CODE /OBJECT /OPTIMIZE /SHOW=(NOINCLUDE, NODICTIONARY, MAP, NOPREPROCESSOR, SINGLE) /NOSTANDARD=(SYNTAX,NOSOURCE-FORM) /WARNINGS=GENERAL,NODECLARATION) File Qualifier /LIBRARY file-spee[, ... ] Specifies one or more FORTRAN source files to be compiled and, optionally, libraries to be searched for INCLUDE files that are referenced in the source file(s). You must separate multiple input file specifications with either commas (,) or plus signs (+). The commas and plus signs have different meanings, as follows: • Commas delimit FORTRAN source files to be compiled separately. FORTRAN compiles each file and creates an object module for each. • Plus signs delimit files to be concatenated or libraries containing INCLUDE files. FORTRAN compiles the source files as a single file and creates one object module. Library file specifications must be preceded by a plus sign and qualified with the /LIBRARY qualifier. If no file type is specified, FORTRAN assumes the default type of TLB. VAX FORTRAN Language Summary 2 LINK Command The LINK command binds one or more object modules into an executable image that can be executed with the RUN command . You can also specify object module libraries to be searched for modules and symbols referenced, but not defined in the object module(s) being linked. By default, the linker searches: 1. Libraries specified in the LINK command in the order they are specified. 2. Libraries defined by the logical names LNK$LIBRARY, LNK$LIBRARY_l , LNK$LIBRARY-----.2, and so on, that may exist in the process, group, or system logical name tables. 3. The default system library. LINK Command Format LlNK[/qualifier ... ) file-spec[/qualifier ... ], ... Command Qualifiers /BRIEF /[NO)CONTIGUOUS /[NO]CROSS-REFERENCE /[NO)DEBUG /[NO)EXECUTABLE[=file-spec) /FULL /HEADER /[NO)MAP[=file-spec) /[NO)SHAREABLE[=file-spec) /[NO)SYSLIB /[NO)SYSSHR /[NO]TRACEBACK /[NO)USERLIBRARY[= (table[, ... ])] Default /NOCONTIGUOUS /NOCROSS-REFERENCE /NODEBUG /EXECUTABLE /NOMAP (interactive) /MAP (batch) /NOSHAREABLE /SYSLIB /SYSSHR /TRACEBACK /USERLIBRARY =ALL VAX FORTRAN Language Summary 3 File Qualifiers /lNCLUDE=(module-name[, ... ]) /LIBRARY /OPTIONS /SELECTIVE_SEARCH file-spee[, ... ] Specifies one or more input files. The input files can be object modules to be linked, libraries to be searched for external references or from which specific modules are to be included, shareable images to be included in t he output image, or option files to be read by the linker. If you specify multiple input files, separate the file specifications with commas (,) or plus signs (+). In either case, the linker creates a single image file. If you do not specify a file type in an input file specification, the linker supplies default file types, based on the nature of the file. All object modules are assumed to' have file types of OBJ. No wildcard characters are allowed in the file specification. LIBRARY Command The LIBRARY command creates and maintains libraries of text modules and object modules. Text libraries contain modules having FORTRAN source statements, and are included during compilation if specified in INCLUDE statements. Object module libraries contain object modules to be included in images during linking. The LIBRARY command assumes, by default, that it is operating on an object module library. You must specify !I'EXT to perform an operation on a text library. LIBRARY Command Format LI BRARY[/ qualifier ... ] Ii brary-fi le-spec[l qualifier] [i n put-fi le-spec[, .. .J] VAX FORTRAN Language Summary 4 Command Qualifiers /COMPRESS[=option[, ... J)l /CREATE[=( option[, ... J)] /CROSS-REFERENCE[=(option[, ... l)l /DELETE=(module[, ... J) /EXTRACT=(module[, ... l) /FULL /HELP /INSERT /MACRO /OBJECT /ONLY=(module[, ... J) /0 UTPUT =file-spec /REMOVE=(symbol[, ... J) /REPLACE /SELECTIVE_SEARCH /TEXT / WIDTH=n Command Qualifiers Default /[NO]GLOBALS /[NO]LIST[=file-spec] /[NO]LOG /[NO]NAMES /[NO]SQUEEZE /GLOBALS /NOLIST /NOLOG /NONAMES /SQUEEZE File Qualifiers /MODULE=module-name library-file-spec Specifies the name of the library you want to create or modify. If the file specification does not include a file type, the LIBRARY command assumes a default type of OLB. VAX FORTRAN Language Summary 5 input-file-spee[, ... J Specifies the names of one or more files that contain modules you want to replace or insert into the specified library. When you use the /CREATE qualifier, the input file specification is optional. When you use the /EXTRACT qualifier, an input file specification is not permitted. If a file specification does not include a file type, the LIBRARY command assumes a default file type of OBJ. You can control the default file type by specifying one of the following qualifiers on the LIBRARY command: Qualifier Default File Type /HELP /MACRO /OBJECT !rEXT /SHARE HLP MAR OBJ TXT EXE VAX FORTRAN Language Summary 6 Language Summary Order of Statements The following figure shows the required order of statements in a FORTRAN program unit. In this figure, vertical lines separate statement types that can be interspersed. For example, DATA statements can be interspersed with executable statements. Horizontal lines indicate statement types that cannot be interspersed with executable statements. Statements in the 'executable' category include: ACCEPT" ASSIGN, assignment statements, BACKSPACE, CALL, CLOSE, CONTINUE, DELETE" DO and END DO" ELSE, ENDFILE, FIND~ GO TO, IF and END IF, INQUIRE, OPEN, PAUSE, PRINT, READ, RETURN, REWIND, REWRITE" STOP" TYPE" UNLOCK" and WRITE. Statements in the 'specification' category include: COMMON, DICTIONARY, DIMENSION, EQUIVALENCE, EXTERNAL, INTRINSIC, RECORD,. SAVE, structure declarations, type declarations, and VOLATILE. OPTIONS Statement PROG RAM,FUNC TIO N,S UBR OU TIN E, o r BLOCK DATA Statements IMPLICIT NONE Statement IMPLICIT Statements Comment Oth er Specification lines and INCLUDE Statements NAMELIST FOR MAT an d ENTRY Stateme nts PA RA METER State me nts Statements DATA State men ts State men t Function Defini tions Executa ble Statements EN D Statemen t ZK -61 5-82 Required Order of Statements and Lines VAX FORTRAN Language Summary 7 Statements accept-statement: See READ ACCEPT assign-statement: ASSIGN s TO v assignment-statement: v=e backspace-statement: BACKSPACE ([UNIT =]u[,ERR=s][,IOSTAT = ios]) BACKSPACE u blockdata-statement: BLOCK DATA [nam] call-statement: CALL sub[([a][,[a]] ...)] close-statement: CLOSE ([UNIT =]u[,p][,ERR=s][,IOSTAT = ios]) P is one of the following parameters: { STATUS} DISPOSE DISP 'SAVE' 'KEEP' ' DELETE' 'PRINT' 'SUBMIT' 'PRINT IDELETE' 'SUBMIT IDELETE' VAX FORTRAN Language Summary 8 common-statement: COMMON [/[cb]/]nlist[[,] /[cb]/nlist] ... continue-statement: CONTINUE data-statement: DATA nlistlclistl[[,] nlistlclist/] .. . data-type-declaration (see type-declaration) decode-statement: DECODE (c,f,b[,ERR= s][,IOSTAT = ios]) [iolist] definefile-sta temen t: DEFINE FILE u(m,n,U,v)[,u(m,n,U,v)] delete-statement: DELETE ([UNIT =]u[,REC=r][,ERR= s][,IOSTAT =ios]) DELETE (u' r[,ERR= s][,IOSTAT =ios]) dictionary-statement: DICTIONARY 'cdd-path[/[NO]LlST]' dimension-statement: DIMENSION a([d1 :]d2)[,a([d1 :]d2)] ... do-statement: DO [s[, ]] v= e1,e2[,e3] DO [s[,]] WHILE (e) VAX FORTRAN Language Summary 9 else-statement: ELSE ELSE IF (e) THEN encode-state!llent: ENCODE (c,f,b[,ERR= s][,IOSTAT = ios]) [iolist] end-statement: END END DO END IF END MAP END STRUCTURE EN D UNION endfile-statement: ENDFILE ([UNIT = ]u[,ERR=s][,IOSTAT = ios]) ENDFILE u entry-statement: ENTRY nam[([p[,p] ... ])] equivalence-statement: EQUIVALENCE (nlist)[,(nlist)] ... external-statement: EXTERNAL v[,v] ... EXTERNAL *v[,*v] ... VAX FORTRAN Language Summary 10 find -sta temen t: FIND ([UNIT = ]u,REC= r[,ERR= s][ ,IOSTAT =ios]) FIND (u 'r[,ERR= s][,IOSTAT = ios]) format-statement: FORMAT (field-spec[, ... ]) function-statement: [typ] FUNCTION nam [ *m ][([p[,p] ... ])] goto-statement: Go TO s GO TO (slist)[,] e GO TO v[[,](slist)] if-statement: IF (e) 51,52,53 IF (e) 5t IF (e1) THEN block ELSE IF (e2) THEN block ELSE block END IF VAX FORTRAN Language Summary 11 implici t-sta tement: IMPLICIT typ(a[,a] ... )[,typ(a[,a] ... )] ... IMPLICIT NONE include-statement: INCLUDE 'file-spec[/[NO]LlST]' INCLUDE ' [file-spec](module-name)[/[NO]LlST]' inquire-statement: INQUIRE(par[,par] ... ) par is a keyword specification having one of these forms: key key = value key is a keyword as described below. value depends on the keyword. Values Keyword inputs fin FILE UNIT DEFAUL TFILE e fin outputs ACCESS BLANK CARRIAGECONTROL DIRECT ERR EXIST FORM FORMATTED cv cv cv cv s Iv cv cv VAX FORTRAN Language Summary 12 Values Keyword Outputs IOSTAT KEYED NAME NAMED NEXTREC NUMBER OPENED ORGANIZATION RECl RECORDTYPE SEQUENTIAL UNFORMATTED v cv cv Iv v v Iv cv v cv cv cv instrinsic-statement: INTRINSIC v[,v] ... map-declaration (see union-declaration) namelist-sta temen t: NAMELIST /grp/ nlist[[.] /grp/ nlist] ... open-statement: OPEN (par[,par] ...) par is a keyword specificati~n in one of the following forms: key key = value VAX FORTRAN Language Summary 13 key is a keyword , as described below. value depends on the keyword. Keyword Values ACCESS ' SEQUENTIAL ' DIRECT ' 'KEYED' 'APPEND' ASSOCIATEVARIABLE BLOCKSIZE BLANK BUFFERCOUNT CARRIAGECONTROL DEFAUL TFILE DISP v e ' NULL ' 'ZERO ' e 'FORTRAN' ' LIST' ' NONE' c (same as DISPOSE) DISPOSE ERR EXTENDSIZE FILE FORM INITIALSIZE IOSTAT KEY MAXREC NAME ' KEEP ' or ' SAVE' 'PRINT ' 'DELETE ' ' SUBMIT ' , SUBMIT/DELETE' , PRINT/DELETE ' s e e , FORMATTED' 'UNFORMATTED' e v keys pee e (same as FILE) . VAX FORTRAN Language Summary 14 Keyword NOSPANBlOCKS ORGANIZATION READONlY REel RECORDSIZE RECORDTYPE Values 'SEQUENTIAL' 'RELATIVE ' ' INDEXED ' e (same as RECl) ' FIXED ' 'VARIABLE ' ' SEGMENTED' ' STREAM ' , STREAM_CR ' 'STREAM_lF' SHARED STATUS TYPE UNIT USEROPEN 'OLD' 'NEW' 'SCRATCH' ' UNKNOWN' (same as STATUS) e p options-statement: OPTIONS qualifier[,qualifier ... ] INOCHECK VAX FORTRAN Language Summary 15 ! ~~~]OVERFLOW) I ([NO]BOUNDS) ([NO]UNDERFLOW) NONE /[NO]EXTEND_SOURCE /[NO]F77 /[NO]G_FLOATING /[NO]14 /CHECK= parameter-statement: PARAMETER (p=c[,p= c] ... ) pause-statement: PAUSE [disp] print-statement: PRINT See WRITE program-statement: PROGRAM nam read -statement: READ Statement - Formatted Sequential Access READ (extu,fmt[,err][,iostat][,end]) [iolist] READ f[,iolist] ACCEPT f[,iolist] VAX FORTRAN Language Summary 16 READ Statement - List-Directed Sequential Access READ (extu, *[,errH,iostatH,end]) [iolist] READ *[,iolist] ACCEPT *[,iolist] READ Statement - Namelist-Directed Sequential Access READ (extu,nml[,errH,iostat][,end]) READ n ACCEPT n READ Statement - Unformatted Sequential Access READ (extu[,errH,iostatH,end]) [iolist] READ Statement - Formatted Direct Access READ (extu,fmt,rec[,err][,iostat)) [iolist] READ (u 'r,fmt[,err][,iostat)) [iolist] READ Statement - Unformatted Direct Access READ (extu,rec[,err][,iostat)) [iolist] READ (u 'r[,err][,iostat)) [iolist] READ Statement - Formatted Indexed READ (extu,fmt,keyspec[,keyid][,err][,iostat)) [iolist] READ Statement - Unformatted Indexed READ (extu, keyspec[, keyid][,err][, iostat)) [iolist] VAX FORTRAN Language Summary 17 READ Statement - Formatted Internal READ (intu ,fmt[,err][ ,iostat][,end]) [iolist] READ Statement - List-Directed Internal READ (intu, *[,err][,iostat][,end]) [iolist] record -statement: RECORD Istruc/rnlist [,/struc/rnlist] ['/struc/rnlist] return-statement: RETURN [i] rewind-statement: REWIND ([UNIT =]u[,ERR=s][,IOSTAT =ios]) REWIND u rewrite-statement: REWRITE Statement - Formatted Indexed REWRITE (extu,fmt[,err][,iostat]) [iolist] REWRITE Statement - Unformatted Indexed REWRITE (extu[,err][,iostat]) [iolist] save-statement: SAVE [a[,a] ... ] VAX FORTRAN Language Summary 18 Statement Function: fun([p[,p] ... ]) = e stop-statement: STOP [disp] structure-declaration-block: STRUCTURE [lstruc/] [fnlist] fdcl [fdcl] [fdcl] END STRUCTURE subroutine-statement: SUBROUTINE sub[([p[,p] ... ])] type-statement See WRITE type-declaration (character): CHARACTER[ *Ien[,]] v[ *Ien] [/clistl][,v[ *Ien] [/clistl]] ... type-declaration (numeric): typ v [/clist/}[,v [/clist/J] ... VAX FORTRAN Language Summary 19 union-declaration: UNION mdcl [mdcll [mdcll END UNION where mdcl is: MAP fdcl [fdcll [fdcll END MAP unlock-statement: UNLOCK ([UNIT =]u[,ERR=s][,IOSTAT=ios]) UNLOCK u virtual-statement: VIRTUAL a([d1 :]d2)[,a([d1 :]d2)] ... volatile-statement: VOLATILE nlist write-statement: WRITE Statement - Formatted Sequential Access WRITE (extu,fmt[,err][,iostat]) [iolist] VAX FORTRAN Language Summary 20 PRINT f[,iolist] TYPE f[,iolist] WRITE Statement - List-Directed Sequential Access WRITE (extu,*[,err][,iostat]) [iolist] PRINT * [, iolist] TYPE *[,iolist] WRITE Statement - Namelist-Directed Sequential Access WRITE (extu,nml[,err][,iostat]) PRINT n TYPE n WRITE Statement - Unformatted Sequential Access WRITE (,e xtu[,err][ ,iostat]) [iolist] WRITE Statement - Formatted Direct Access WRITE (extu,rec,fmt[,err][,iostat]) [iolist] WRITE (u 'r,f[,err][,iostat]) [iolist] WRITE Statement - Unformatted Direct Access WRITE (extu,rec[,err][,iostat]) [iolist] WRITE (u ' r[,err][,iostat]) [iolist] WRITE Statement - Formatted Internal WRITE (intu,fmt[,err][,iostat]) [iolist] WRITE Statement - List-Directed Internal WRITE (intu, * [,err][,iostat]) [iolist] VAX FORTRAN Language Summary 21 VAX FORTRAN Expression Operators The following lists the expression operators in each data type in order of descending precedence: Precedence of Operators Data Type Operator Arithmetic ** Exponentiation *,! Multiplication, division +,- Addition, subtraction, unary plus and minus Character II Concatenation Character expressions Relational .GT. Greater than Arithmetic, logical, or character .. Operation Opera tes Upon Arithmetic or logical expressions Logical .GE. Greater than or equal to .LT. Less than .LE. Less than or equal to .EQ. Equal to .NE. Not equal to .NOT. .NOT.A is true if and only if A is false .AND. A.AND.B is true if and only if A and B are both true expressions (all relational operators have equal precedence) Logical or integer expressions VAX FORTRAN Language Summary 22 Precedence of Operators (Cont.) Data Type Operator Operation .OR. A.OR.B is true if either A or B or both are true .EQV. A.EQV.B is true if and only if A and B are both true or A and B are both false .NEQV. A.NEQV.B is true if and only if A is true and B is false or B is true and A is false .XOR. Same as .NEQV. Operates Upon .EQV., .NEQV., and .XOR. have equal priority Parentheses may be used to group operands so that they are evaluated irrespective of the precedence of operators. VAX FORTRAN Language Summary 23 VAX Symbolic Debugger Command Summary Debugger Command Qualifiers @filespec ALLOCATE n-bytes A'ITACH process-name CALL routine [(arg [,arg .. .])] CANCEL ALL CANCEL BREAK CANCEL DISPLAY ... /BRANCH /CALL /EXCEPTION /ALL } /INSTRUCTION [=opcode] { breakpt [, breakpt ... ] /LINE /MODIFY /ALL } { display -name CANCEL EXCEPTION BREAK CANCEL MODE CANCEL MODULE /ALL } { module-name CANCEL RADIX [/OVERRIDE J CANCEL SCOPE CANCEL SOURCE [ /MODULE=module-name J CANCEL TRACE /BRANCH /CALL /EXCEPTION /INSTRUCTION [=opcodeJ /LINE !MODIFY /ALL } { tracept [, tracept ... J VAX FORTRAN Language Summary 24 CANCEL TYPE/OVERRIDE CANCEL WATCH { CANCEL WINDOW /ALL} watchpt [, watchpt ... J { /ALL } window-name [,window-name ... J DECLARE name [:kindJ [,name [:kindll DEFINE [~~t~::DJ symbol = expression [,symbol = expression ... J /GLOBAL DEFINE/KEY /[NOJECHO /[NOJIF_STATE /[NOJLOCK_STATE /[NOJLOG /[NOJSET_STATE /[NOJTERMINATE keyname expression DELETE/KEY /ALL ] /[NO]LOG [ /[NO] STATE keyname DEPOSIT /ASCII:n /ASCIC /ASCIW /ASCIZ /BYTE /D-FLOAT /FLOAT /G-FLOAT /H-FLOAT /INSTRUCTION /LONG /OCTAWORD /QUADWORD /WORD addr-expresn = expression VAX FORTRAN Lanl!ual!e Summarv 25 DISPLAY /CLEAR /GENERATE /HIDE /MARK_CHANGE /REFRESH /REMOVE /SIZE:n EVALUATE /ADDRESS !BINARY /CONDITION_VALUE /DECIMAL /HEXADECIMAL /OCTAL /Ascn:n /ASCIC /ASCID /ASCIW f [display-name [AT window-name] [kind] ] " " l expression [,expression .. ,] /ASCIZ /BINARY /BYTE /CONDITION_VALUE /D~LOAT EXAMINE /DECIMAL /FLOAT addr-expresn [,addr-expresn ... J /G~LOAT /H-FLOAT /HEXADECIMAL /INSTRUCTION !LONG /OCTAL /OCTAWORD /QUADWORD /SOURCE /[NOJSYMBOL /WORD VAX FORTRAN Language Summary 26 EXIT EXITLOOP [n-Ievel] FOR name = expression TO expression [BY expression] DO (debug-cmds) GO HELP [t opic] IF language-expression THEN (debug-cmds) [ELSE (debug-cmds)] REPEAT language-expression DO (debug-cmds) SAVE old-display AS new-display SCROLL /BOTTOM /DOWN /LEFT /RIGHT [display-name] trop /UP SEARCH J fALL /NEXT /IDENTIFIER [ fSTRING [range] string SELECT [~~g~b~iJ display -name /SOURCE SET BREAK /AFTER:n /BRANCH /CALL /EXCEPTION /INSTRUCTION [=opcode] /LINE addr-expresn[,addr-expresn ... ] [WHEN (condition-expresn)] /MODIFY [DO (debug-cmds)] /[NO]SOURCE /RETURN /[NO] SILENT /I'EMPORARY VAX FORTRAN Lanl1'IIRI7p. SnmmSll'U ?7 SET DISPLAY /MARK_CHANGE] /REMOVE [ /SIZE:n [display-name [AT window) [kind)) , .. . SET EXCEPTION BREAK SET LANGUAGE language SET LOG filespec SET MARGIN right-margin } left-margin:right-margin left-margin: :right-margin 1 SET MAX_SOURCE~ILES n-files SET MODE mode [,mode ... ) SET MODULE [ /ALLOCATE) { /ALL } module-name [,module-name .. .) SET OUTPUT SET RADIX [~~g~~g~EEN-LOG] [NOJTERMINAL [NOJVERIFY [JONJ~P~T] [~~~~:L /OVERRIDE DEFAULT HEXADECIMAL OCTAL ] SET SCOPE [ /MODULE J location [,location .. .J ALL ] NEXT SET SEARCH IDENTIFIER [ STRING VAX FORTRAN Language Summary 28 SET SOURCE [ /MODULE=module-name ] SET STEP BRANCH CALL EXCEPTION INSTRUCTION[=opcode] INTO LINE OVER RETURN [NO] SILENT [NO]SOURCE [NO]SYSTEM filespec SET TRACE /AFTER:n /BRANCH /CALL /EXCEPTION /INSTRUCTION [=opcodeJ /LINE /MODIFY /[NOJSOURCE /RETURN /[NOJSILENT /TEMPORARY SET TYPE [ /OVERRIDE J (ASCII ) ASCID ) ASCII:n (ASCIZ addr-expresn [,addr-expresn ... J BYTE D-FLOAT DATE_TIME FLOAT G-FLOAT H-FLOAT INSTRUCTION LONG OCTAWORD} PACKED:n t QUADWORD' , WORD VAX FORTRAN Language Summary 29 SET TERMINALIWIDTH:n 1 /AFTER:n /SILENT SET WATCH /SOURCE [ /TEMPORARY addr-expresn "" [WHEN (condition)] SET WINDOW name AT (line, line) SHOW BREAK SHOW CALLS [n-calls] SHOW DISPLAY SHOW KEY [~:~~TORYJ {key-name [,~~~-~ame .. ,]} /[NO]STATE SHOW LANGUAGE SHOW LOG SHOW MARGINS SHOW MAX_SOURCE-YILES SHOW MODE SHOW MODULE SHOW OUTPUT SHOW SCOPE SHOW SEARCH SHOW SOURCE SHOW STEP SHOW SYMBOL [/ADDRESS] /DIRECT symbol, ... [IN scope , ... J /TYPE SHOW TRACE SHOW TYPE [ /OVERRIDE J SHOW WATCH SHOW WINDOW SPAWN [/NOWAITl del-command VAX FORTRAN Language Summary 30 STEP /BRANCH /CALL /EXCEPTION /INSTRUCTION [=opcode] /INTO /LINE lOVER /RETURN /SILENT /[NO]SOURCE /[NO]SYSTEM SYMBOLIZE addr-expression TYPE [module\ ]line[:line] '""" UNDEFINE [~~t~BAL /KEY SymbOl] WHILE language-expression DO (debug-cmds) [ n-units ] VAX FORTRAN Language Summary 31 VAX FORTRAN Generic and Intrinsic Functions Generic and Intrinsic Functions Number of Arguments Generic Name Specific Name Type of Argument Type of Result Square Root! a 112 1 SQRT SQRT DSQRT QSQRT CSQRT CDSQRT REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 Natural Logarithm2 logea 1 LOG ALOG DLOG QLOG CLOG CDLOG REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 Functions Common Logarithm2 loglOa 1 LOG1O ALOG1O DLOG1O QLOG1O REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Exponential ea 1 EXP EXP DEXP QEXP CEXP CDEXP REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 Sine 3 Sin a 1 SIN SIN DSIN QSIN CSIN CDSIN REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEXd6 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 VAX FORTRAN Language Summary 32 Generic and Intrinsic Functions (Cont.) Number of Arguments Generic Name Specific Name Type of Argument Type of Result Sine 3 (degree) Sin a 1 SIND SIND DSIND QSIND REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Cosine 3 Cosa 1 COS COS DCOS QCOS CCOS CDC OS REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 Cosine 3 (degree) Cosa 1 COSD COSD DCOSD QCOSD REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Functions Tangent3 Tan a 1 TAN TAN DTAN QTAN REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Tangent3 (degree) Tan a 1 TAND TAND DTAND QTAND REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Sine 4 ,5 Arc Sin a 1 ASIN ASIN DASIN QASIN REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Sine (degree) Arc Sin a 1 ASIND ASIND DASIND QASIND REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Cosine 4 ,5 ArcCosa 1 ACOS ACOS DACOS QACOS REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 VAX FORTRAN Language Summary 33 Generic and Intrinsic Functions (Cont.) Number of Arguments Generic Name Specific Name Type of Argument Type of Result Arc Cosine (degree) Arc Cos a 1 ACOSD ACOSD DACOSD QACOSD REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Tangent5 Arc Tan a 1 ATAN ATAN DATAN QATAN REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Tangent 5 ,7 (degree) ArcTan a 1 ATAND ATAND DATAND QATAND REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Arc Tangent5 ,6 Arc Tan a 1/a2 2 ATAN2 ATAN2 DATAN2 QATAN2 REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Functions Arc Tangent5 ,7 (degree) Arc Tan al/a2 2 ATAN2D ATAN2D DATAN2D QATAN2D REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Hyperbolic Sine Sinha 1 SINH SINH DSINH QSINH REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Hyperbolic Cosine Cosh a 1 COSH COSH DCOSH QCOSH REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 Hyperbolic Tangent Tanh a 1 TANH TANH DTANH QTANH REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 REAL*16 VAX FORTRAN Language Summary 34 Generic and Intrinsic Functions (Cont .) Functions Absolute Value 8 lal Number of Arguments 1 Generic Name Specific Name Type of Argument Type of Result ABS IIABS JIABS ABS DABS QABS CABS CDABS IIABS JIABS INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 REAL*4 REAL*8 INTEGER*2 INTEGER*4 IINT JINT IIDINT JIDINT REAL*4 REAL*4 REAL*8 REAL*8 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 lABS Truncation9 •12 lal 1 INT IIQINT JIQINT IDINT IQINT AINT IIDINT JIDINT IIQINT JIg INT AINT DINT QINT REAL*16 REAL*16 COMPLEX*8 COMPLEX*8 COMPLEX*16 COMPLEX*16 REAL*8 REAL*8 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*16 REAL*16 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 VAX FORTRAN Language Summary 35 Generic and Intrinsic Functions (Cont.) Functions Nearest Integer9 ,12 [a + .5*sign(a)] Number of Arguments Generic Name Specific Name Type of Argument Type of Result 1 NINT ININT JNINT IIDNNT JIDNNT IIQNNT JIQNNT IIDNNT JIDNNT IIQNNT JIQNNT REAL*4 REAL*4 REAL*8 REAL*8 REAL*16 REAL*16 REAL*8 REAL*8 REAL*16 REAL*16 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 IDNINT IQNINT ANINT ANINT DNINT QNINT Zero-Extend Functions 1 ZEXT IZEXT JZEXT Conversion tolO REAL*4 1 REAL FLOATI FLOATJ SNGL SNGLQ LOGICAL*l LOGICAL*2 INTEGER*2 LOGICAL*l LOGICAL*2 LOGICAL*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*4 REAL*4 REAL*4 REAL*4 REAL*4 REAL*4 REAL*4 INTEGER*4 VAX FORTRAN Language Summary 36 Generic and Intrinsic Functions (Cont.) Functions Conversion tolO REAL*8 Number of Arguments Generic Name 1 DBLE Specific Name DBLE DBLEQ Conversion to REAL*16 1 QEXT QEXT QEXTD Type of Argument Type of Result INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 REAL*8 REAL*8 REAL*8 REAL*8 REAL*8 REAL*8 REAL*8 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 COMPLEX*8 COMPLEX*16 REAL*16 REAL*16 REAL*16 Fix 1O,12 (REAL*4-to-integer conversion) 1 IFIX IIFIX JIFIX REAL*4 REAL*4 INTEGER*2 INTEGER*4 Floatl° Onteger-to-REAL*4 conversion) 1 FLOAT FLOATI FLOATJ INTEGER*2 INTEGER*4 REAL*4 REAL*4 REAL*8 Float lO (Integer-to-REAL*8 conversion) 1 DFLOAT DFLOTI DFLOTJ INTEGER*2 INTEGER*4 REAL*8 REAL*8 REAL*16 Float (Integer-to-REAL*16 conversion) Conversion to COMPLEX*8, or 1 QFLOAT 1,2 13 1,2 CMPLX INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*16 REAL*16 COMPLEX*8 COMPLEX*8 VAX FORTRAN Language Summary 37 Generic and Intrinsic Functions (Cont.) Functions Number of Arguments COMPLEX*8 from Two Arguments Conversion to COMPLEX*16, or COMPLEX*16 from Two Arguments 1,2 1,2 1,2 1 1 1,2 13 1,2 1,2 1,2 1,2 1 1 Generic Name DCMPLX Specific Name Type of Argument Type of Result REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 COMPLEX*8 COMPLEX*16 COMPLEX*8 COMPLEX*8 COMPLEX*8 COMPLEX*8 COMPLEX*8 COMPLEX*16 COMPLEX*16 COMPLEX*16 COMPLEX*16 COMPLEX*16 COMPLEX*16 COMPLEX*16 Real Part of Complex 1 REAL DREAL COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 Imaginary Part of Complex 1 AIMAG DIMAG COMPLEX*8 COMPLEX*16 REAL*4 REAL*8 Complex from Two Arguments (See Conversion to COMPLEX*8 and Conversion to COMPLEX*16) Complex Conjugate (ifa= (X,Y) CONJG (a) = (X,-Y)) 1 REAL*8 product ofREAL*4's al*a2 2 CONJG CONJG DCONJG COMPLEX*8 COMPLEX*16 COMPLEX*8 COMPLEX*16 DPROD REAL*4 REAL*8 VAX FORTRAN Language Summary 38 Generic and Intrinsic Functions (Cont.) Functions Maximum 12 max(ab a 2,···a n ) (returns the maximum value from among the argument list; there must be at least two arguments) Number of Arguments n Generic Name Specific Name Type of Argument Type of Result MAX IMAXO JMAXO AMAXI DMAXI QMAXI IMAXO JMAXO IMAXI JMAXI AIMAXO AJMAXO INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 REAL*4 REAL*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 MAXO MAXI AMAXO REAL*4 REAL*4 Minimum 12 min(al,a2,···a n ) (returns the minimum value among the argument list; there must be at least two arguments) n MIN MINO MINI AMINO IMINO JMINO AMINI DMINI QMINl IMINO JMINO IMINI JMINl AIMINO AJMINO INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 REAL*4 REAL*4 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*4 VAX FORTRAN Language Summary 39 Generic and Intrinsic Functions (Cont.) Functions Positive Difference al-(min(aba 2)) Number of Arguments 2 (returns the first argument minus the minimum of the two arguments) Remainder al-a2*[a 1/a2] (returns the remainder when the first argument is divided by the second) Generic Name Specific Name Type of Argument Type of Result DIM IIDIM JIDIM DIM DDIM QDIM IIDIM JIDIM INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 IMOD JMOD AMOD DMOD QMOD INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 IDIM 2 MOD Transfer of Sign lall Sign a2 2 SIGN ISIGN IISIGN JISIGN SIGN DSIGN QSIGN IISIGN JISIGN INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 REAL*4 REAL*8 REAL*16 INTEGER*2 INTEGER*4 Bitwise AND (performs a logical AND on corresponding bits) 2 lAND IIAND JIAND INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bitwise OR (performs an inclusive OR on corresponding bits) 2 lOR lIaR JIOR INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 VAX FORTRAN Language Summary 40 Generic and Intrinsic Functions (Cont.) Number of Arguments Generic Name Specific Name Type of Argument Type of Result Bitwise Exclusive OR (performs an exclusive OR on corresponding bits) 2 IEOR IIEOR JIEOR INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bitwise Complement (complements each bit) 1 NOT INOT JNOT INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bitwise Shift (al logically shifted left a2 bits) 2 ISHFT IISHFT JISHFT INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bit Extraction (extracts bits a2 through a2 + a3 -:-1 from al); see also MVBITS system subroutine 3 IBITS IIBITS JIBITS INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Functions Bit Set (returns the value of al with bit a2 of al set to 1) 2 IBSET lIB SET JIB SET INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bit Test (returns .TRUE. ifbit a2 of argument al equals 1) 2 BTEST BITEST BJTEST INTEGER*2 INTEGER*4 LOGICAL*2 LOGICAL*4 Bit Clear (returns the value of al with bit a2 of al set to 0) 2 IBCLR IIBCLR JIBCLR INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 Bitwise Circular Shift 14 (circularly shifts rightmost a3 bits of argument al by a2 places) 3 ISHFTC IISHFTC JISHFTC INTEGER*2 INTEGER*4 INTEGER*2 INTEGER*4 VAX FORTRAN Language Summary 41 Generic and Intrinsic Functions (Cont.) Functions Number of Arguments Generic Name Specific Name Type of Argument Type of Result Length 12 (returns length of the character expression) 1 LEN CHARACTER INTEGER*4 Index (C b C2 )12 (returns the position of the substring C2 in the character expression Cl) 2 INDEX CHARACTER INTEGER*4 Character 12 (returns a character that has the ASCII value specified by the argument) 1 CHAR LOGICAL*l INTEGER*2 INTEGER*4 CHARACTER ASCII Value l l (returns the ASCII value of the argument; the argument must be a character expression that has a length of 1) Character relationals (ASCII collating sequence) 1 ICHAR CHARACTER 2 LLT LLE LGT LGE CHARACTER CHARACTER CHARACTER CHARACTER 2 2 2 LOGICAL*4 LOGICAL*4 LOGICAL*4 LOGICAL*4 NOTES 1. The argument of SQRT, DSQRT, or QSQRT must be greater than or equal to zero. The result of CSQRT or CDSQRT is the principal value, with the real part greater than or equal to zero. When the real part is zero, the result is the principal value, with the imaginary part greater than or equal to zero. VAX FORTRAN Language Summary 42 2. The argument of ALOG, DLOG, QSQRT, ALOGIa, DLOGIO, QLOGIO, ATAND, ATAN2D, ASIND, DASIND, ACOSD, DACOSD, or QACOSD must be greater than zero. The argument of CLOG or CDLOG must not be (0.,0.). 3. The argument of SIN, DSIN, QSIN , COS , DCOS , QCOS , TAN, DTAN , or QTAN must be in radians. The argument is treated modulo 2*7r. The argument of SIND, COSD, or TAND must be in degrees. The argument is treated modulo 360. 4. The absolute value of the argument of ASIN, DASIN, QASIN , ACOS, DACOS, QACOS, ASIND, DASIND, QASIND, ACOSD, DACOSD, or QACOSD must be less than or equal to 1. 5. The result of ASIN, DASIN, QASIN , ACOS, DACOS, QACOS , ATAN, DATAN, QATAN , ATAN2, DATAN2, or QATAN2 is in radians. The result of ASIND, DASIND, QASIND, ACOSD, DACOSD, QACOSD, ATAND, DATAND, QATAND, ATAN2D, DATAN2D, or QATAN2D is in degrees. 6. If the value of the first argument of ATAN2, DATAN2, or QATAN2 is positive, the result is positive. When the value of the first argument is zero, the result is zero if the second argument is positive and 7r if the second argument is negative. If the value of the first · argument is negative, the result is negative. If the value of the second argument is zero, the absolute value of the result is 7r/2. Bot h arguments must not have the value zero. The range of the result for ATAN2, DATAN2, and QATAN2 is: -7r < result < 7r. 7. If the value of the first argument of ATAN2D, DATAN2D, or QATAN2D is positive, the result is positive. When the value of the first argument is zero, the result will be zero if the second argument is positive and 180 degrees if the second argument is negative. If the value of the first argument is negative, the result is negative. If the value of the second argument is zero, the absolute value of the result is 90 degrees. Both arguments must not have the value zero. The range of the result for ATAN2, DTAN2D, QATAN2D is: -180 degrees < result ~ 180 degrees. 8. The absolute value of a complex number, (X,Y), is the real value: (X2+ y2)t 9. [xl is defined as the largest integer whose magnitude does not exceed the magnitude of x and whose sign is the same as that of x. For example [5.71 equals 5. and [-5.71 equals -5. VAX FORTRAN Language Summary 43 10. Functions that cause conversion of one data type to another type provide the same effect as the implied conversion in assignment statements. The following functions return the value of the argument without conversion: the function REAL with a real argument, the function DBLE with a double precision argument, the function INT with an integer argument, and the function QEXT with a REAL*16 argument. 11. See Programming in VAX FORTRAN for additional information on character functions. 12. The functions INT, IDINT, IQINT, NINT, IDNINT, IQNINT, IFIX, MAX1, MINI, and ZEXT return INTEGER*4 values if the /I4 command qualifier is in effect, INTEGER*2 values if the /NOI4 qualifier is in effect. 13. When CMPLX and DCMPLX have only one argument, this argument is converted into the real part of a complex value, and zero is assigned to the imaginary part. (When there are two arguments (not complex), a complex value is produced by converting the first argument into the real part of the value and converting the second argument into the imaginary part.) 14. Bits in a1 beyond the value specified by a3 are unaffected. VAX FORTRAN Language Summary 44 VAX FORTRAN Run-Time Error Summary Summary of FORTRAN Run-Time Errors FORTRAN Condition Symbol FOR$~OTFORSPE FOR$_SYNERRNAM FOR$_TOOMANVAL FOR$~NVREFV AR FOR$---REWERR FOR$-.DUPFILSPE FOR$~NPRECTOO FOR$-.BACERR FOR$.-ENDDURREA FOR$---RECNUMOUT Error Number 1 17 18 19 20 21 22 23 24 25 Severity F F F F F F F F F F Message Text not a FORTRAN -specific error syntax error in NAMELIST input too many values for NAMELIST variable invalid reference to variable in NAMELIST input REWIND error duplicate file specifications in pu t record too long BACKSP ACE error end-of-file during read record number outside range FOR$_OPEDEFREQ FOR$_TOOMANREC FOR$_CLOERR FOR$JILNOTFOU FOR$_OPEFAI FOR$_MIXFILACC FOR$-INVLOGUNI FOR$~NDFILERR FOR$_UNIALROPE FOR$_SEGRECFOR FOR$-ATTACCNON FOR$-INCRECLEN FOR$~RRDURWRI FOR$~RRDURREA FOR$-RECIO_OPE FOR$-INSVIRMEM 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 F F F F F F F F F F F F F F F F OPEN or DEFINE FILE required too many records in I/O statement CLOSE error file not found open failure mixed file access modes invalid logical unit number ENDFILE error unit already open segmented record format error attempt to access non-existent record inconsistent record length error during write error during read recursive I/O operation insufficient virtual memory VAX FORTRAN Language Summary 45 Summary of FORTRAN Run-Time Errors (Cont.) FORTRAN Condition Symbol FOR$~O_SUCDEV FOR$JILNAMSPE FOR$~NCRECTYP FOR$~EYVALERR FOR$~NCOPECLO FOR$_WRIREAFIL FOR$~NVARGFOR FOR$~NVKEYSPE FOR$~NCKEYCHG FOR$~NCFILORG FOR$_SPERECLOC FOR$~O_CURREC Error Number 42 43 44 45 46 47 48 49 50 51 52 53 Severity F F F F F F F F F F F F Message Text no such device file name specification error inconsistent record type keyword value error in OPEN statement inconsistent OPEN/CLOSE parameters write to READONL Y file invalid argument to FORTRAN Run-Time Library invalid key specification inconsistent key change or duplicate key inconsistent file organization specified record locked no current record FOR$---.REWRITERR FOR$-DELERR FOR$_UNLERR FOR$JINERR FOR$-LISIO_SYN FOR$--.lNFFORLOO FOR$JORVARMIS FOR$_SYNERRFOR FOR$_OUTCONERR FOR$--.lNPCONERR FOR$_OUTSTAOVE FOR$--.lNPSTAREQ FOR$_VFEV ALERR SS$--.lNTOVF SS$--.lNTDIV SS$JLTOVF 54 55 56 57 59 60 61 62 63 64 66 67 68 70 71 72 F F F F F,C F F,C F E,C F,C F F F,C F,C F,C F,C REWRITE error DELETE error UNLOCK error FIND error list-directed I/O syntax error infinite format loop format/variable- type mismatch syntax error in format output conversion error input conversion error output statement overflows record input statement requires too much data variable format expression value error arithmetic trap, integer overflow arithmetic trap, integer zero divide arithmetic trap, floating overflow VAX FORTRAN Language Summary 46 Summary of FORTRAN Run-Time Errors (Cont.) FORTRAN Condition Symbol SS$JLTOVFJ SS$JLTDIV SS$JLTDIVJ SS$JLTUND SS$JLTUND-F SS$_SUBRNG MTH$_WRONUMARG MTH$---.lNVARG MAT MTH$_UNDEXP MTH$-LOGZERNEG MTH$_SQUROONEG Error Number 72 73 73 74 74 77 80 81 82 83 84 Severity F,e F,e F,e F,e F,e F,e F F F,e F,e F,e Message Text arithmetic fault, floating overflow arithmetic trap, zero divide arithmetic fault, zero divide arithmetic trap, floating underflow arithmetic fault, floating overflow subscript out of range wrong number of arguments invalid argument to math library undefined exponentiation logarithm of zero or negative value square root of negative value MTH$~LOUNDMAT 87 88 89 FOR$-.ADJARRDIM 93 MTH$_SIGLOSMAT MTH$~LOOVEMAT F,e F,e F,e F,e significance lost in math library floating overflow in math library floating underflow in math library adjustable array dimension error VAX FORTRAN Language Summary 47 Character Sets Standard FORTRAN Character Set The character set specified by the FORTRAN 77 Standard consists of the uppercase letters A through Z, the digits 0 through 9, and the following special characters: HT (tab) SP (space) $ (dollar sign) , (apostrophe) ( (left parenthesis) ) (right parenthesis) * (asterisk) + (plus sign) , (comma) - (minus sign) . (period) / (slash) : (colon) = (equal sign) VAX FORTRAN Character Set The VAX FORTRAN character set includes the entire FORTRAN 77 Standard set plus the lower case letters a through z (upper- and lowercase letters are equivalent) and the following special characters: ! (exclamation mark) " (quotation mark) % (percent sign) & (ampersand) < (left angle bracket) > (right angle bracket) _ (underscore) All printable characters (those with ASCII values 20 through 7D, inclusive) can appear in character constants, Hollerith constants, and comments. VAX FORTRAN Language Summary 48 ASCII Character Set ASCII Character Set Column 0 I 2 3 4 Row 5 6 7 8 9 4 5 6 7 0 @ I 2 3 4 A B C D E P Q a R b q r S T U c s d e t F V f v G H W X Y g h w x y 0 I 2 3 NUL SOH STX ETX EOT ENQ ACK BEL BS HT DLE DCI DC2 DC3 DC4 NAK SYN ETB CAN EM SP # $ % & 5 6 7 8 9 I p u A B C D E F NUL SOH STX ETX EOT ENQ ACK BEL LF VT FF CR SO SI SUB ESC FS GS RS US Null Start of Heading Start of Text End of Text End of Transmission Enquiry Acknowledge Bell * J Z j + [ > K L M N k 1 m n ? 0 < / DLE DCI DC2 DC3 DC4 NAK SYN ETB \ 1 0 z DEL Data Link Escape Device Control I Device Control 2 Device Control 3 Device Control 4 Negative Acknowledge Synchronous Idle End of Transmission Block VAX FORTRAN Language Summary 49 ASCII Character Set (Cont.) BS HT LF VT FF CR SO SI SP Backspace Horizontal Tabulation Line Feed Vertical Tab Form Feed Carriage Return Shift Out Shift In Space CAN EM SUB ESC FS GS RS US DEL Cancel End of Medium Substitute Escape File Separator Group Separator Record Separator Unit Separator Delete VAX FORTRAN Language Summary 50
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies