# Compaq BASIC for OpenVMS
Alpha and VAX Systems
User Manual

Previous | Contents | Index

                   DIM A ('123'D)

User Action: Supply an integer constant.

INTDATTYP, integer data type not supported in ANSI
Explanation: ERROR---A program compiled with the /ANSI_STANDARD qualifier contains an integer variable or array.
User Action: Remove the integer variable or array.

INTERR, integer error or overflow
Explanation: WARNING---The program contains an integer expression whose value is outside the valid range.
User Action: Modify the expression so that its value is within the allowable range or use an integer data type that can contain all possible values for the expression.

INTERRDES, please submit an SPR ---- internal error in comment processing
Explanation: WARNING---An error has been detected while processing a comment in the BASIC compiler.
User Action: Please submit a software problem report (SPR) with the source code of a small program that produces the error.

INTERRSCA, please submit an SPR ---- internal error in SCA support
Explanation: ERROR---An error has been detected in the SCA support in the BASIC compiler. If you recompile your program without the /ANALYSIS_DATA qualifier, this error should no longer appear.
User Action: Please submit a software problem report (SPR) with the source code of a small program that produces the error.

INVCHNNUM, invalid channel number, must be greater than zero
Explanation: ERROR---A channel number less than or equal to zero was specified.
User Action: Change the channel number to be greater than zero.

INVCONREQ, invalid conversion requested
Explanation: ERROR---The program contains a reference to the REAL or INTEGER functions and the argument is an entire array, GROUP, RECORD, or RFA expression.
User Action: Remove the invalid argument. The argument to these functions must be a numeric expression.

INVINTTYP, invalid integer type
Explanation: ERROR---A reference to the INTEGER function contains an invalid data-type keyword, for example, A = INTEGER(A, SINGLE).
User Action: Change the invalid data-type keyword. The INTEGER function returns only BYTE, WORD, LONG, or QUAD values.

INVLOGNAM, invalid logical name
Explanation: ERROR---The argument to the ASSIGN compiler command specified a logical name length of less than 1 or greater than 63.
User Action: Supply a valid logical name.

INVPRISPE, invalid priority specification, expecting < or >
Explanation: ERROR---On the SET INPUT PRIORITY statement, you specified a character other than < or > to indicate the relative priorities of the two transformation numbers.
User Action: Specify the priority relationship with less than < (lower priority) or greater than > (higher priority).

INVREATYP, invalid real type
Explanation: ERROR---A reference to the REAL function contains an invalid data-type keyword, for example, A = REAL(A, LONG).
User Action: Change the invalid data-type keyword. The REAL function returns only SINGLE, DOUBLE, GFLOAT, SFLOAT, TFLOAT, XFLOAT, or HFLOAT values.

INVSUBTYP, <data-type> is not a subtype of <data-type>
Explanation: ERROR---The program contains an invalid declaration containing contradictory type declarations, for example, DECLARE REAL BYTE.
User Action: Supply a valid declaration. Use only valid integer subtypes for INTEGER and only valid floating-point subtypes for REAL.

IS_NOTDYN, <name> is not a DYNAMIC MAP variable of MAP <name>
Explanation: ERROR---A REMAP statement names a variable that was not named in the MAP DYNAMIC statement for that MAP.
User Action: Remove the variable from the REMAP statement or name the variable in the MAP DYNAMIC statement for that map.

ITEMUSAPP, ITERATE must appear within a loop
Explanation: ERROR---The program contains an ITERATE statement that is not within a FOR-NEXT, WHILE, or UNTIL loop.
User Action: Remove the ITERATE statement, or surround it with a loop.

JMPBADBLO, jump to line number <line number> is into a controlled block
Explanation: ERROR---The program attempts to transfer control to a WHEN block or associated handler.
User Action: Change the program logic so that it does not transfer control to a WHEN block or associated handler.

JMPBADLAB, jump to label: <label> is into a block
Explanation: ERROR---The program attempted to transfer control into a FOR-NEXT, WHILE, UNTIL, IF, or SELECT-CASE block.
User Action: Change the program logic so that it does not transfer control into a block.

JMPBADLIN, jump to line number <number> is into a block
Explanation: INFORMATION---The program transfers control to a line number within a FOR-NEXT, WHILE, UNTIL, IF, or SELECT-CASE block.
User Action: This is an informational message. However, it is bad programming practice to transfer control into a block.

JMPINTDEF, jump into DEF
Explanation: ERROR---The program attempts to transfer control into a DEF block.
User Action: Change the control statement; you cannot transfer control into a DEF block except by invoking the function.

JMPOUTDEF, jump out of DEF
Explanation: ERROR---The program attempts to transfer control out of a DEF block.
User Action: Change the control statement. Use an EXIT DEF, FNEXIT, FNEND, or END DEF statement to transfer control out of a DEF block.

JMPOUTHAN, jump out of HANDLER
Explanation: ERROR---The program attempts to transfer control out of an error handler.
User Action: Change the control statement. Use an EXIT HANDLER, RETRY, or CONTINUE statement to transfer control out of an error handler.

JMPOUTPRO, jump out of program unit
Explanation: ERROR---In a source file containing more than one program module, a statement attempts to transfer control from one module into another.
User Action: Change the statement that attempts to transfer control; you cannot transfer control into a different program module.

JMPUNRLIN, jump to unreferenceable line number <number>
Explanation: ERROR---A RESUME, GOSUB, or GOTO statement attempts to transfer control to a CASE statement.
User Action: Label or number the SELECT statement and transfer control to the beginning of the SELECT-CASE block.

KEYCANNOT, key <name> in MAP <map-name> cannot be a dynamic variable
Explanation: ERROR---A KEY clause in an OPEN statement specifies a variable declared as dynamic in a MAP DYNAMIC statement.
User Action: Specify a static variable in the KEY clause; that is, declare the variable in a MAP statement, not a MAP DYNAMIC statement.

KEYIS_NEE, key is needed for indexed files
Explanation: ERROR---The program attempts to open an indexed file for output, and the PRIMARY KEY clause is missing.
User Action: Supply a PRIMARY KEY clause.

KEYMUSBE, key must be either word, longword, quadword, string, decimal, record or group
Explanation: ERROR---A FIND or GET statement on an indexed file contains a key specification that is not a WORD, LONG, QUAD, STRING, DECIMAL, or an 8-byte RECORD or GROUP expression.
User Action: Change the key specification to be a WORD, LONG, QUAD, STRING, DECIMAL, or an 8-byte RECORD or GROUP expression.

KEYMUSTBE, key, <vbl-name> in map <map-name> must be either word, longword, quadword, string, decimal, record or group
Explanation: ERROR---An OPEN statement contains a key specification that is not an unsubscripted WORD, LONG, QUAD, STRING, DECIMAL, or an 8-byte RECORD or GROUP variable.
User Action: Change the key specification to be an unsubscripted WORD, LONG, QUAD, STRING, DECIMAL, or an 8-byte RECORD or GROUP variable.

KEYNOTMAP, KEY <vbl-name> is not an unsubscripted variable in MAP <name>
Explanation: ERROR---An indexed file OPEN statement specifies a KEY variable that does not appear in a MAP statement.
User Action: Place the KEY variable in the MAP referenced by the OPEN statement's MAP clause.

KEYREQMAP, KEY clauses require a MAP clause
Explanation: ERROR---An OPEN statement specifies KEY clauses without specifying a MAP clause.
User Action: Supply a MAP clause to define the position of the keys in the record buffer.

KEYSEGMUS, key segment <name> in map <map-name> must be a string key
Explanation: ERROR---An OPEN statement specifies a segmented key containing a numeric variable. For example:

              OPEN "INDEX.DAT" AS FILE #1, ORGANIZATION INDEXED,  &
                  PRIMARY KEY (A$, B$, C%), MAP ABC

User Action: Specify only string variables in segmented keys.

KEYSINC, <keyword> keyword inconsistent with <keyword>
Explanation: ERROR---An OPEN statement contains contradictory record format specifications, for example, both FIXED and VARIABLE.
User Action: Specify only one record format.

KEYTOOLON, KEY <name> in MAP <name> is too long (max is 255)
Explanation: ERROR---A KEY variable is longer than 255 characters.
User Action: Reduce the length of the KEY variable. The maximum key length is 255 characters.

KEYWORINC, keyword inconsistent with <OPEN clause> clause
Explanation: ERROR---An OPEN statement contains an ALLOW, ACCESS, or RECORDTYPE clause whose keyword argument is invalid, for example, ACCESS FORTRAN.
User Action: Change the clause argument to a valid keyword for that clause.

LABNOTDEF, label <label> not defined
Explanation: ERROR---The program tries to transfer control to a nonexistent label.
User Action: Define the label before transferring control to it.

LABNOTLAB, label <name> does not label an active block statement
Explanation: ERROR---An EXIT statement in a loop, if-then-else, or SELECT-CASE block specifies a label that does not refer to that block.
User Action: Change the program so that the label actually refers to the block in which the EXIT statement occurs.

LABNOTLOO, label <name> does not label an active loop statement
Explanation: ERROR---In a loop, an EXIT or ITERATE statement specifies a label that does not refer to that loop.
User Action: Change the program so that the label actually refers to the loop in which the EXIT or ITERATE statement occurs.

LANFEADEC, language feature is declining
Explanation: INFORMATION---The program contains a language feature that is not recommended for new program development, for example, the FIELD statement. This error is reported only when the /FLAG=DECLINING qualifier is in effect.
User Action: Use: 1) MAP, MAP DYNAMIC and REMAP statements instead of FIELD, 2) EDIT$ rather than CVT$$, and 3) overlaid MAPs rather than CVTxx functions.

LANFEAINC, language feature incompatible with BASIC-PLUS-2
Explanation: INFORMATION---The program contains syntax that results in different behavior under BASIC and PDP--11 BASIC-PLUS-2, for example, opening a terminal--format file. This error is reported only when the /FLAG=BP2COMPATIBILITY qualifier is in effect.
User Action: None.

LANFEAINH, language feature inhibits optimization
Explanation: INFORMATION---A program compiled with the /NOSETUP qualifier contains a language feature that requires /SETUP, for example, the RESUME statement. The compilation continues with /SETUP in effect.
User Action: None. The program must be compiled with /SETUP in effect for the language feature to work.

LANFEANOT, language feature not available in BASIC-PLUS-2
Explanation: INFORMATION---The program contains a language element that is not supported in BASIC-PLUS-2, for example, RECORD statements. This error is reported only when the /FLAG=BP2COMPATIBILITY qualifier is in effect.
User Action: If the program must run under both BASIC and PDP--11 BASIC-PLUS-2, you must remove the incompatible language feature.

LANFEAOPE, language feature not available in BASIC
Explanation: ERROR---The program contains a PRINT statement with a RECORD clause. BASIC does not support the RECORD clause.
User Action: Remove the RECORD clause.

LEFBOUSPE, left boundary must be less than the right boundary
Explanation: ERROR---In a statement that specifies a viewport or windowsize, you specified a left boundary that is greater than or equal to the corresponding right boundary.
User Action: Correct the left boundary so that it is less than the right boundary.

LENDYNSTR, string length not allowed on dynamic string <name>
Explanation: ERROR---The program contains a dynamic string variable declaration that specifies a string length.
User Action: Length specifications are allowed only for fixed-length strings; remove the length specification from the dynamic string, or allocate the string in a MAP or COMMON.

LENNUMFIL, string length not allowed on numeric FILL
Explanation: ERROR---The program contains a numeric FILL item that specifies a length.
User Action: Remove the length specification from the numeric FILL item.

LETDIRSYN, LET directive syntax error
Explanation: ERROR---A %LET directive contains a syntax error, for example, an invalid lexical identifier.
User Action: Use the correct syntax for the %LET directive.

LETKEYREQ, LET keyword required in ANSI
Explanation: INFORMATION---A program compiled with the /ANSI_STANDARD qualifier contains an assignment statement that omits the LET keyword.
User Action: Supply a LET keyword.

LEXDIRSYN, lexical directive syntax error
Explanation: ERROR---A syntax error was detected in a lexical directive.
User Action: Correct the syntax of the lexicial directive.

LEXIDEMUS, lexical identifier must be declared before reference
Explanation: ERROR---You reference a lexical identifier before you declare it.
User Action: Declare the lexicial identifier before you reference it.

LINNOTALL, line numbers not allowed, use the EDIT command
Explanation: ERROR---An EDIT command with a line number has been found in a program without line numbers.
User Action: Use the EDIT command without specifying a line number to invoke a text editor.

LINNUMERR, illegal line number
Explanation: ERROR---The program contains a line number that is outside the valid range or is not a valid integer (note that the percent sign (%) suffix is not valid for line numbers).
User Action: Specify only integer line numbers in the range 1 to 32,767, inclusive.

LINNUMINC, line number may not appear in INCLUDE directive file
Explanation: ERROR---The file specified in a %INCLUDE compiler directive contains a line number.
User Action: Remove the line number from the file.

LINNUMUND, line number <n> undefined due to conditional compilation
Explanation: ERROR---The program references a line number that does not appear in the object code as a result of the branch taken in a %IF-%THEN-%ELSE-%END-%IF directive.
User Action: Change the %IF-%THEN-%ELSE-%END-%IF directive or remove the line number reference.

LINOUTORDE, Line numbers are out of order
Explanation: ERROR---The line numbers in an Alpha BASIC program are not in ascending order.
User Action: Reorder the line numbers and/or statements in your program so that the line numbers are in ascending order.

LINREQTWO, LINES output requires at least 2 X,Y points
Explanation: ERROR---A LINE graphic output statement specifies less than 2 points.
User Action: Specify a minimum of 2 points in the LINE graphic output statement.

LNPNOTBP2, programs without line numbers are not allowed in BASIC-PLUS-2
Explanation: INFORMATION---BASIC-PLUS-2 does not support programs without line numbers. This error is reported only when the /FLAG = BP2COMPATIBILITY qualifier is in effect.
User Action: Add a line number to the first line of the program.

LOGOPENON, logical operation on noninteger quantity
Explanation: ERROR---The program contains a logical operation performed on strings or real numbers.
User Action: Change the logical operands to integers.

LOOINDMUS, loop control variable must be a numeric variable
Explanation: ERROR---A FOR statement specifies a string variable as the loop control variable.
User Action: Specify a numeric variable. You can use only numeric variables as loop control variables.

LOOINIMUS, loop initial value must be a numeric expression
Explanation: ERROR---A FOR statement attempts to assign a string expression as the loop control variable's initial value.
User Action: Remove the string expression. You can assign only numeric values as the loop's initial value.

LOOLIMMUS, loop limit must be numeric
Explanation: ERROR---A FOR statement attempts to assign a string expression as the loop control variable's limiting value.
User Action: Remove the string expression. You can assign only numeric values as the loop control variable's limiting value.

LOOWILNEV, loop will never execute
Explanation: WARNING---The program contains a FOR/NEXT loop that is not executable, for example, FOR I% = 1% TO 0%. Compilation continues, but the loop is ignored.
User Action: Change the loop parameters or insert an appropriate STEP clause.

LOWLSSUP, lower bound must be less than upper bound
Explanation: ERROR---The lower bound specified in the array is greater than the upper bound.
User Action: Correct the bounds.

LOWNOTVIR, lower bound not permitted with virtual arrays
Explanation: ERROR---Lower bounds of virtual arrays must be zero.
User Action: Correct the lower bounds to be zero.

LOWNOTZERO, lower bound must be zero
Explanation: ERROR---The lower bound of the array must be zero.
User Action: Correct the lower bound to be zero.

LOWRANVAL, range lower value must be less than upper value
Explanation: ERROR---In the RANGE clause, the first value is greater than the second value.
User Action: Change the range clause so that the first value is less than the second value.

LRSETNOT, <keyword> is not allowed with MID
Explanation: ERROR---The LSET and RSET keywords are not allowed with MID.
User Action: Change the LSET or RSET keyword to LET.

MACNOTDEF, macro is not defined
Explanation: ERROR---The macro identifier used in this %UNDEFINE directive was not previously defined by a %DEFINE directive.
User Action: Verify that the identifier has been previously defined with the %DEFINE directive. Verify that the %DEFINE and %UNDEFINE macro IDs match.

MAPDYNNOT, MAP DYNAMIC <map-name> may not be larger than 32,767 bytes
Explanation: ERROR---A MAP DYNAMIC statement references a map that is greater than 32,767 bytes in size.
User Action: Reduce the size of the map, as defined in the MAP statement, or MAP statements, to 32,767 bytes or less.

MAPDYNREQ, MAP DYNAMIC <name> requires corresponding static MAP
Explanation: ERROR---The program contains a MAP DYNAMIC statement whose MAP name does not appear in a MAP statement.
User Action: Provide a MAP with the same name as the MAP DYNAMIC name.

MAPNOTDEF, MAP <name> used in OPEN not defined
Explanation: ERROR---An OPEN statement's MAP clause references a nonexistent MAP.
User Action: Define the MAP referenced by the MAP clause, or remove the MAP clause.

MAPTOOLAR, MAP too large in OPEN
Explanation: FATAL---The size of the MAP referenced in an OPEN statement is greater than 32,767 bytes.
User Action: Reduce the size of the MAP.

MAPVARALI, variable <name> not aligned in multiple references in MAP <name>
Explanation: ERROR---More than one overlaid MAP contains the same variable, but the variable's position differs in the MAPs.
User Action: The same variable can appear in multiple overlaid MAPs, but the variable must occupy the same position in the PSECT; make sure that the variable appears in the same position in the MAPs.

MAPVARREF, MAP variable <name> referenced before declaration
Explanation: INFORMATION---A reference to a MAP variable occurs before the MAP statement.
User Action: Make sure that the MAP statement precedes any references to variables in the MAP.

MATDIMERR, matrix dimension error
Explanation: ERROR---The program either:

- Contains a MAT IDN, MAT TRN, or MAT INV performed on a one-dimensional array
- Performs a matrix operation that requires identical subscripts in the operand arrays and those arrays have different subscripts

User Action: Dimension the arrays to the proper number of subscripts.

MATLOWBOU, matrix must have lower bound 0 and upper bound 4
Explanation: ERROR---The specified transformation matrix either has a lower bound other than 0 or an upper bound other than 4.
User Action: Declare the matrix such that both dimensions have a lower bound of 0 and an upper bound of 4.

MATMUL2OP, MAT multiply of 2 4X4 matrices required
Explanation: ERROR---You specified the wrong dimensions in a matrix in the MAT multiply statement or a WITH clause on the DRAW statement, or you specified a nonmultiplication operation in a multiple operation MAT arithmetic statement. For example: MAT A=B*C+D. A two-dimensional matrix with lower bounds 0 and upper bounds 4 in both dimensions is required.
User Action: Declare the matrix to be a two-dimensional matrix with lower bounds 0 and upper bounds 4 in both dimensions.

MATONEOR2, MAT statements require one or two dimensions
Explanation: ERROR---A MAT statement references an array of more than two dimensions.
User Action: Remove the array reference. MAT statements are valid only on arrays of one or two dimensions.

MAXCONCOM, maximum conditional compilation depth exceeded
Explanation: FATAL---Too many nested %IF-%THEN-%ELSE-%END-%IF directives are contained in the program.
User Action: Reduce the number of nested %IF-%THEN-%ELSE-%END-%IF directives. You can nest up to eight such constructs.

MAXDIMEXC, maximum number of dimensions exceeded. Maximum is 32
Explanation: ERROR---An array declaration specifies more than the allowed number of dimensions.
User Action: Reduce the number of dimensions to 32 or less.

MAXKEYSEG, maximum of 8 key segments exceeded
Explanation: ERROR---An OPEN statement specifies a segmented key with more than eight segments.
User Action: Reduce the number of segments in the KEY clause to eight or less.

MAXPAREXC, maximum parameters exceeded for <name>. Maximum is <number>
Explanation: ERROR---The program attempts to declare a DEF with more than eight parameters or a subprogram with more than 255 parameters.
User Action: Reduce the number of parameters; DEFs allow up to eight parameters and subprograms allow up to 255 parameters.

MAXPAREXP, no more than <number> parameter(s) expected for <sub--func--name>
Explanation: ERROR---An external SUB or FUNCTION was called with more parameters than were specified in the EXTERNAL statement, including both OPTIONAL and non-OPTIONAL parameters.
User Action: Reduce the number of parameters in the call.

MERGE, merged <item> and <item>
Explanation: ERROR---The program contains a syntax error. BASIC assumes that there is an incorrect space, for example, PR INT. Compilation continues so that other errors can be detected. The actual program line remains unchanged and no object file is produced.
User Action: Examine the line carefully to discover the error. Change the program line to correct the syntax error.

MINPAREXP, at least <number> parameter(s) expected for <sub--func--name>
Explanation: ERROR---An external SUB or FUNCTION was called with fewer parameters than were specified as non-OPTIONAL parameters in the EXTERNAL statement.
User Action: Increase the number of parameters in the call so that the number of parameters is equal to or greater than the number of non-OPTIONAL parameters.

MISENDIF, missing END IF directive before end of program unit
Explanation: ERROR---A %IF directive crosses a program module boundary.
User Action: Terminate the %IF with a %END %IF before beginning a new source module.

MISENDFOR, missing END <block> for <block> at line <n> statement <m>
Explanation: ERROR---The program contains a SELECT, IF, or DEF without a matching END statement.
User Action: Supply a matching END statement.

MISMATEND, mismatched END, expected <block>
Explanation: ERROR---The program contains an incorrect END statement, for example, an END RECORD statement instead of an END GROUP statement.
User Action: Supply the correct type of END statement.

MISMATFOR, missing NEXT for <item> at line <n> statement <m>
Explanation: ERROR---The program contains a FOR, WHILE, or UNTIL without a matching NEXT.
User Action: Supply the matching NEXT statement.

MODNOTFND, module <mod-name> not found in text library <text-lib-name>
Explanation: ERROR---The module name you specified in a %INCLUDE directive was not found in the text library you specified.
User Action: Place the module name in the specified text library.

MULCHRARR, multiple character array name not ANSI
Explanation: INFORMATION---A program compiled with the /ANSI_STANDARD qualifier contains an array whose name contains more than one character.
User Action: Reduce the length of the name to a single character.

MULCHRDEF, multiple character DEF name not ANSI
Explanation: INFORMATION---A program compiled with the /ANSI_STANDARD qualifier contains a DEF whose name contains more than one character.
User Action: Reduce the length of the name to a single character.

MULDEFLEX, multiple definition of lexical identifier is illegal
Explanation: ERROR---A lexical constant is named in more than one %LET directive.
User Action: Declare the lexical constant only once with %LET.

MULHANSPE, multiple handlers specified for WHEN block
Explanation: ERROR---A WHEN block specifies both an attached and detached error handler.
User Action: Change the WHEN block to specify either an attached or detached error handler.

MULMAIPROG, multiple main program units are illegal
Explanation: ERROR---More than one main program unit has been detected in a single source file.
User Action: Modify your source file so that all BASIC statements are contained within a single main program or within a subprogram.

MULNOTBP2, multiple program units per module not BASIC-PLUS-2 compatible
Explanation: INFORMATION---A program compiled with the /FLAG=BP2COMPATIBILITY qualifier contains more than one program unit. BASIC-PLUS-2 does not allow more than one program unit in a single file.
User Action: Separate the program into individual program units and compile the units separately.

MULOPTBAS, multiple OPTION BASE statements not ANSI
Explanation: ERROR---A program compiled with the /ANSI_STANDARD qualifier contains more than one OPTION BASE statement.
User Action: Specify the OPTION BASE statement only once per program.

MULPRONOT, multiple program units per module not ANSI
Explanation: INFORMATION---A program compiled with the /ANSI_STANDARD qualifier contains more than one program unit.
User Action: Rewrite the program converting the subprograms to subroutines.

MULSTAPER, multiple statements per line not ANSI
Explanation: INFORMATION---A program compiled with the /ANSI_STANDARD qualifier contains more than one statement on a line.
User Action: Change the program so that each statement has its own line number.

MULTDEF, multiple definition of <name>
Explanation: WARNING---A variable is declared in more than one declarative statement.
User Action: Make sure that the variable is declared only once.

NAMNOTREC, name <name> is not of a RECORD component
Explanation: ERROR---A RECORD component reference uses an invalid record name, for example, A::B when A is not a RECORD name.
User Action: Change the erroneous reference.

NAMTOOLON, name is too long, changed to <name>
Explanation: WARNING---A variable or array name is longer than 31 characters. BASIC truncates the name to 31 characters and continues compilation so that other errors can be detected. The actual program line remains unchanged and no object file is produced.
User Action: Reduce the length of the variable name to 31 or fewer characters.

NEGFILSTR, negative FILL or string length
Explanation: ERROR---The program contains a negative FILL specification or string length.
User Action: Change the FILL specification or string length to a positive number.

NESFORLOO, nested FOR loops with same control variable <name>
Explanation: ERROR---The program contains nested FOR/NEXT loops that use the same index variable.
User Action: Change the index variable for all but one of the loops.

NOBASFRAM, no BASIC frame on stack
Explanation: ERROR---BASIC could not find a valid stack frame. This could be caused by running a program with /CHECK=NOBOUNDS or by a non BASIC subprogram.
User Action: Debug the program before running with
/CHECK=NOBOUNDS or check the logic of the non BASIC subprogram.

NODESCALL, no descriptor allocated for array <name>
Explanation: ERROR---An immediate mode statement required an array descriptor, but it was not available. BASIC allocates array descriptors only if the program code requires it.
User Action: None.

NODIAGFILE, unsaved changes, no diagnostics file produced
Explanation: WARNING---The program in memory contains changes that have not been saved; therefore, no diagnostics file will be produced from this compilation.
User Action: SAVE or REPLACE the file.

NOEDIT, no change made
Explanation: WARNING---The search string in an EDIT command was not located in the text.
User Action: Enter valid search string.

NOFILEALL, a file specification is not allowed with the REPLACE command
Explanation: ERROR---The REPLACE command does not allow the use of a file specification.
User Action: Use either the SAVE command with a file specification or the REPLACE command without one.

NOFRAME, compiled procedure is currently not active
Explanation: WARNING---A program containing multiple compilation units has been stopped while running in the environment due to a STOP statement or a Ctrl/C entered by the user. The NOFRAME error indicates that the routine executing when the program stopped is not the last compilation unit in the source file. You can examine or modify a variable in immediate mode only if the current routine is the last compilation unit in the source file.
User Action: If you do not intend to debug your program in immediate mode, no action is required. If you do intend to debug your program in immediate mode, make the routine that you want to debug the last compilation unit in the source file. The symbols for the last compilation unit are always available. Alternatively, use the OpenVMS Debugger to debug your program.

NOHANSPE, no handler specified for WHEN block
Explanation: ERROR---A WHEN block has been found that does not specify an error handler.
User Action: Specify an error handler for the WHEN block.

NOLINENUM, missing line number on first line
Explanation: WARNING---There is no line number on the first line of the program.
User Action: Add a line number to the first line of the program or remove all line numbers from the program.

NOLNROOM, out of memory for line numbers
Explanation: ERROR---The program contains more line-numbered statements than BASIC allows.
User Action: Change the program so that it uses multistatement lines instead of having each statement on its own line or split the program into one or more program units in separate files.

NOMAPNAME, MAP statement requires map name
Explanation: ERROR---A MAP statement does not specify a map name.
User Action: Specify a name for the MAP.

NOSCAFILE, unsaved changes, no analysis file produced
Explanation: WARNING---The program in memory contains changes that have not been saved; therefore, no data analysis file will be produced from this compilation.
User Action: SAVE or REPLACE the file.

NOSRCLINE, unsaved changes, no source line debugging available
Explanation: WARNING---The program in memory contains changes that have not been saved; therefore, no source line debugging will be available from this compilation.
User Action: SAVE or REPLACE the file.

NOSUCHMAP, no such MAP area <name>
Explanation: ERROR---A REMAP statement names a nonexistent MAP area.
User Action: Supply a MAP before executing the REMAP statement.

NOTIMP, not implemented in this version
Explanation: ERROR---The program attempted to use a feature that does not exist in this version of BASIC.
User Action: Examine your program and remove the nonimplemented feature.

NOTMACROOM, out of memory for macro definitions
Explanation: ERROR---The limit on the number of macro definitions has been exceeded.
User Action: Reduce the number of %DEFINE definitions, or undefine some previously defined macros with the %UNDEFINE directive.

NOTPASSBY, <item> may not be passed BY <mechanism>
Explanation: ERROR---The program specifies an incorrect passing mechanism for a parameter's data type, or an invalid parameter. For example, you cannot pass an entire array BY VALUE, nor can you pass a label as a parameter.
User Action: Specify a valid parameter or passing mechanism.

NOTRANS, no main program
Explanation: WARNING---When a RUN command was typed, only subroutines or functions were available. BASIC requires a main program to receive the transfer of control.
User Action: Supply a main program.

NOTRECVBY, <item> may not be received by <mechanism>
Explanation: ERROR---A subprogram specifies an invalid parameter or an incorrect passing mechanism for a parameter's data type. For example, you cannot receive an entire array BY VALUE.
User Action: Specify a valid parameter or passing mechanism.

NOTXTROOM, out of memory for statement text
Explanation: ERROR---The program contains more text than BASIC allows.
User Action: Split the program into one or more program units.

NOVALUE, <text> keyword requires a value
Explanation: ERROR---A keyword command was typed without a value.
User Action: Supply a valid keyword value.

NUMARREXP, numeric array expected
Explanation: ERROR---A CHANGE statement does not specify a numeric array.
User Action: Supply a numeric array in the CHANGE statement.

NUMCONREQ, numeric constant required
Explanation: ERROR---The program contains a string in a context that requires a numeric constant. For example:

Previous | Next | Contents | Index