### Microsoft Quick BASIC Error Messages (V4.5)
/
--------------------------------------------------------------------------------
●Boot error ●Link error
●Compile error ●Run-time error
Each type of error is related to a specific step in the program development process. A boot error may occur when using the QB or BC command to boot into QuickBASIC. A compile error (and warning) may occur during the compilation process. A run-time error may occur when the program is running. A link error may only occur when using the link command to link object files generated by BC or other language compilers.
Section 1.2 lists the boot, compile, and run-time error messages and all specified error codes in alphabetical order. Table 1.1 lists the run-time error messages and error codes in numerical order. Section 1.3 lists the Microsoft Overlay Linker error messages, and Section 1.4 lists the Microsoft Library Manager error messages.
1.1 Error Message Display
When a run-time error occurs in the environment (using the default screen display), the error message appears in the dialog box, and the cursor is placed on the line where the error occurred.
In an independent executable program (that is, a program that can be executed by entering the base name of the executable file at the system prompt), the run-time system prints an error message with an address, unless the /D, /E, or /W option is specified on the BC command line. In these cases, the error range is followed by the line number where the error occurred. The standard form of such an error message is as follows:
Error n in module module-name at address segment
ffset or Error n in line linenumber of module module-name at address segment
ffset Some errors have been included in the error code list. If an error occurs when entering the error trapping subroutine, the return value of ERR sets the corresponding code (the error trapping subroutine can be entered using the ON ERROR statement). The ERR value remains unchanged until the RESU
ME statement returns control to the main program.
Table 1.1 Run-time Error Codes
Deseription Code Deseription
2 syntax error 53 File not found
3 RETURN without GOSUB 54 Bad file mode
4 Out of DATA 55 File already open
5 Illegal function call 56 FIELD statement active
6 Overflow 57 Device I/O error
7 Out of memory 58 File already exists
9 Subscript out of rang 59 Bad record length
10 Duplicate definition 61 Disk full
11 Division by zero 62 Input past end of file
13 Type mismatch 63 Bad record number
14 Out of string space 64 Bad file name
16 String formula too complex 67 Too many files
19 No RESUME 68 Device unavailable
20 RESUME without error 69 Communication-buffer overflow
24 Device timeout 70 Permission denied
25 Device fault 71 Disk not ready
27 Out of paper 72 Disk-media error
39 CASE ELSE expected 73 Advanced feature unavailable
40 Variable requirted 74 Rename across disks
50 FIELD overflow 75 Path/File access error
51 Internal error 76 Path not found
52 Bad file name or number
(Table 1.1 lists the error codes in numerical order. For the explanation of the errors, please refer to the alphabetical list.)
1.2 Call, Compile, Run-time Error Messages
Argument-count mismatch
A function feature used in QuickBASIC that is applied in other BASIC versions, or this feature can only run under a high version of DOS. (Compile or run-time error) Error code: 73
Advanced feature unavailable
The number of parameters used in the BASIC subroutine or function is incorrect. (Compile error)
Array already dimensioned
The error may be caused by the following reasons:
●Using multiple DIM statements to define the same static array.
●Using the DIM statement after array initialization. Before redefining a dynamic array using DIM, you must use the ERASE statement to reallocate memory units; or redefine it using the REDIM statement.
●After the array is defined, the OPTION BASE statement appears (compile or run-time error)
Array not defined
Using an undefined array. (Compile error)
Array not dimensioned
Using an undefined array. If compiled with BC, this error is not "fatal", the program will be executed, but the result may be incorrect. (Compile error)
Array too big
There is not enough user data space to load the defined array. Please reduce the array size or use the $DYNAMIC meta-command. If the array space exceeds 64K, or the array is not dynamic and the /AH option is not used, this error will still occur. Please reduce the array space, or use the /AH command line option to make the array a dynamic array. (Compile error)
AS clause required
The variable defined with the AS statement has no parameters. If the AS clause is in the first definition of the variable, the AS clause must be in a series of statements related to the variable such as DIM, REDIM, SHARED, and COMMON statements. (Compile error)
AS clause required on first declaration
A variable that has not been defined with the AS clause uses the AS clause as a parameter. (Compile error)
AS missing
The compiler requires the keyword AS, such as in the OPEN "FILENAME" FOR INPUT AS#1 statement. (Compile error)
Asterisk missing
The asterisk (*) is missing in the user-defined string definition. (Compile error)
Bad file mode
The reasons for the error are as follows:
●The program uses the PUT or GET statement for sequential files, or uses the OPEN statement for non-I, O, or R file modes.
●Using the FIELD statement for a file that is not opened in random access mode.
●Performing output operations on a file opened in input form.
●Performing input operations on a file opened in output or append form.
●QuickBASIC attempts to use an include file stored in compressed format. The include file must be stored in text format. Reload the include file, store it in text format, and then run the program.
●Attempting to load an incorrect binary program. (Run-time error)
Error code: 54
Bad file name
The file name is illegal when using the LOAD, SAVE, KILL, or OPEN statement (for example, the file name has too many characters). (Run-time error)
Error code: 64
Bad file name or number
The file name or number used in the statement or command is not explained by the OPEN statement, or exceeds the number of files explained in the program. (Run-time error)
Error code: 52
Bad record length
The length of the record variable specified in the GET or PUT statement does not match the record length specified in the corresponding OPEN statement. (Run-time error)
Error code: 59
Bad record number
In the PUT or GET statement, the number of records is less than or equal to zero. (Run-time error)
Error code: 63
BASE missing
The Quick BASIC version requires the keyword BASE to appear here, such as in OPTION BASE. (Compile error)
Binary source file
The file being compiled is not an ASCII file. All source files stored in BASIC must use the A option. In a binary source file, if the user uses the /Z1 or /ZD CodeView option, QuickBASIC also uses this error message to prompt. (Compile error)
Block IF without END IF
There is no corresponding ENDIF statement in the IF structure block. (Compile error)
Buffer size expected after /C:
The buffer size must be defined after the /C option. (BC boot error)
BYVAL allowed only with numeric arguments
BYVAL does not accept string or record parameters. (Compile error)
/C:buffer size too large
The maximum capacity of the communication buffer is 32,767 bytes. (BC boot error)
Cannot continue
During debugging, the user's changes prevent continuous execution. (Run-time error)
Cannot find file (filename), Input path;
When QuickBASIC cannot find the Quick library or utility (BC.EXE, LINK.EXE, LIB.EXE, or QB.EXE) required by the program, this error message will appear. Please enter the correct path name, or press the CTRL+C key to return to the DOS prompt. (QB boot error)
Cannot generate listing for BASIC binary source files
Attempting to compile a binary source file with the BC command and the /A option. Please remove the /A option and recompile. (BC boot error)
Cannot start with 'FN'
Using "FN" as the first two letters of a subroutine or variable name. "FN" can only be used as the first two letters when calling the DEFFN function. (Compile error)
CASE ELSE expected
There is no matching case in the SELECT CASE statement. (Run-time error)
Error code: 39
CASE without SELECT
The first part of the SELECT CASE statement is missing or misspelled. (Compile error)
Colon expected after /C
A colon ":" is required between the option and the parameter of the buffer size. (BC boot error)
Comma missing
A comma "," is needed. (Compile error)
COMMON and DECLARE must precede executable statements
The position of the COMMON statement or DECLARE statement is incorrect. The COMMON and DECLARE statements must be placed before all executable statements. Except for the following statements, all BASIC statements are executable.
▲COMMON
▲DEFtype
▲DIM (applied to static variables)
▲OPTION BASE
▲REM
▲TYPE
▲All meta-commands
(Compile error)
COMMON in Quick library too small
There are more common variables in the module than the common variables currently loaded in the Quick library. (Compile error)
COMMON name illegal
In the block named COMMON, QuickBASIC encounters an illegal block name /blocknamel (for example, the block name is a BASIC reserved word). (Compile error)
Communication-buffer overflow
In remote communication, the receive buffer overflows. The size of the receive buffer is defined by the /C option or RB option in the OPEN COM statement. You should often check the buffer space or empty the buffer frequently (using the INPUT function) (Run-time error)
Error code: 69
CONST/DIM SHARED follows SUB/FUNCTION
The CONST and DIM SHARED statements should appear before the definition of all subroutines or FUNCTION procedures. If this program is compiled with BC, this error is not fatal, the program will be executed, but the running result may be incorrect. (Compile warning)
Controlstructure in IF...THEN...ELSE incomplete
A mismatched NEXT, WEND, ENDIF, END SELECT, or LOOP statement appears in the IF…THEN…ELSE one-line statement. (Compile error)
Data-memory overflow
There is too much program data in memory. This error is caused by too much data in constants or static arrays. If compiled with BC, or generating an EXE file or a Librory command, close all debugging options. If there is still not enough memory, please divide the user program into several parts and use the CHAIN statement or use the DYNAMIC meta-command. (C compile error)
DECLARE required
The process is not defined before the implicit call to the SUB or FUNCTION process. All processes must be defined or explained before the implicit call. (Compile error)
DEF FN not allowed in control statements
Defining a DEF FN function inside a control structure such as IF...THEN...ELSE and SELECT CASE is not allowed. (Compile error)
DEF without END DEF
There is no corresponding END DEF statement in the definition of a multi-line function. (Compile error)
DEF type character specification illegal
There is a mistake in entering the DEF type statement. Only LNG, DBL, INT, SNG, STR or space (for user-defined functions) can follow DEF. (Compile error)
Device fault
The drive returns a hardware error. If this message appears when data is transmitted to a communication file, it means that the signal tested by the OPEN COM statement was not detected during this period. (Run-time error)
Error code: 25
Device I/O error
An I/O error occurs during I/O operations on the drive, and the operating system cannot recover from the error state. (Run-time error)
Error code: 57
Device timeout
The program did not receive information from the drive within the scheduled time. (Run error)
Error code: 24
Device unavailable
The device that needs to be entered is not online or does not exist. (Run-time error)
Error code: 68
Disk full
When there is not enough disk space to complete the PRINT, WRITE, or CLOSE operation, Quick BASIC also generates this error message when writing the target file or executable file to the peripheral if there is not enough disk space. (Run-time error)
Error code: 61
Disk-media error
The disk drive hardware detected physical damage on the disk (run-time error)
Error code: 72
Disk not ready
The door of the drive is not closed, or there is no disk on the drive. (Run-time error)
Error code: 71
Division by zero
The divisor in the expression is zero, or the result of the exponent operation is a negative power of zero.
DO without LOOP
The LOOP termination clause is missing in the DO...LOOP statement. (Compile error)
Document too large
The file exceeds the internal limit of Quick BASIC. This file should be divided into several files.
Duplicate definition
Using a definition statement for an item that has been defined, for example, using the same name in the LONST statement and the variable definition statement, or the procedure has the same name as the variable.
This error also occurs when trying to redefine an array. When redefining a dynamic array, you must use DIM or REDIM (compile error or run-time error)
Error code: 10
Duplicate label
Two lines in the program share a number or mark. All line numbers or marks in a module must be unique.
(Compile error)
Dynamic array element illegal
Using a dynamic array element in VARPTR is not allowed. (Compile error)
Element not defined
The element of the user-defined type is not defined. For example, the user-defined type MYTYPE contains elements A, B, and C, and using variable D as an element in MY TYPE will cause this error. (Compile error)
ELSE without IF
Using the ELSE clause but without the corresponding IF statement. Sometimes this error is caused by incorrect IF statement nesting.
(Compile error)
ELSEIF without IF
Using the ELSE IF statement but without the corresponding IF statement. (Compile error)
END DEF without DEF
Using the ELSE DEF statement but without the corresponding DEF statement. (Compile error)
END IF without block IF
The start part of the IF program block is missing. (Compile error)
END SELECT without SELECT
There is only the END SELECT end statement, but no SELECT CASE start sentence. The SELECT CASE start sentence may be omitted (Compile error)
END SUB or END FUNCTION must be last line in window
Adding a code after a process must return to the main module or open another module. (Compile error)
END SUB/FUNCTION withcut SUB/FUNCTION
The user deleted the SUB or FUCTION statement. (Compile error)
END TYPE without TYPE
The END TYPE statement is missing TYPE. (Compile error)
Equal sign missing
Quick BASIC requires an equal sign. (Compile error)
Error during Quick BASIC initialization
There are many reasons for this error. The most common reason is that there is not enough memory space to load Quick BASIC. If the Quick library is loaded, the space occupied by this library should be reduced.
This error will also occur when using it on hardware that does not support Quick BASIC. (QB boot error)
Error in loading file (filename)-Cannot find file
This error will occur when redirecting input from a file to Quick BASIC. The input file is not in the position specified by the command line. (QB boot error)
Error in loading file (filename)-Disk I/O errorThis error is caused by physical problems during disk access, such as the drive door not being closed. (QB boot error)
Error in loading file (filename)-DOS memory-aera error
Writing an assembly language program or POKE statement to the memory area used by DOS. (QB boot error)
Error in loading file(filename)-Invalid format
Loading the Quick BASIC library in an illegal format. This error will occur when using a library established by a different version of Quick BASIC, or when using the /QU option not processed by the Quick BASIC library building command or LINK, or when loading an independent library with Quick BASIC. (QB boot error)
Error in loading file(filename)-Out of memory
The required memory space is larger than the available space. For example: there is not enough space to allocate the file buffer. Try reducing the DOS buffer, releasing programs that have terminated and are still in memory, or removing some device drivers. If the array is large, use the meta-command $DYNAMIC at the beginning of the program. If the file has been loaded, clearing these files can release some memory. (Run-time error)
EXIT DO not within DO...LOOP
The EXIT DO statement is used outside the DO...LOOP statement. (Compile error)
EXIT not within FOR...NEXT
The EXIT FOR statement is used outside the FOR...NEXT statement. (Compile error)
Expected:item
This is a syntax error. The cursor appears on an item that should not appear.
Expression too complex
This error will occur when exceeding a certain internal limit. For example, during the evaluation of an expression, a string irrelevant to the variable is temporarily assigned to the variable. The occurrence of a large number of such strings will cause this error. Please simplify the expression. Re-specify the variable that stores the expression. (Compile error)
Extra file name ignored
Too many files are specified on the command line; the last file on the line will be lost. (BC boot error)
Far heap corrupt
The far-heap storage has an error in the following situations:
●The QB compiler does not support programs that have terminated and remain in memory in DOS.
●The POKE statement modifies the memory area used by Quick BASIC. (This may modify the definition of dynamic arrays for numbers or fixed-length strings)
●The program calls a subroutine of another language, and this subroutine modifies the storage area used by Quick BASIC.
(This may modify the definition of dynamic arrays for numbers or fixed-length strings)
(Compile error)
FIELD overflow
The number of bytes allocated by the FIELD statement is greater than the record length specified in the random file.
(Run-time error)
Error code: 50
FIELD statement active
The space of the record variable used in the file GET or PUT statement has been occupied by the FIELD statement. The GET or PUT statement with the record variable parameter is only applied to files without the FIELD statement. (Run-time error)
Error code: 56
File already exists
The file name defined by the NAME statement is already used in the form of a file name on the disk. (Run-time error)
Error code: 58
File already open
Trying to open an already opened file from the OPEN statement in sequential output mode, or operating on an already opened file with the UNK statement.
(Run-time error)
Error code: 55
File not found
Operating on a non-existent file with FILES, KILL, NAME, OPEN, or RUN statements.
(Run-time error)
Error code: 53
File not found in module module-name at address segment
ffset
The file in the FILE, KILL, NAME, OPEN, or RUN statement does not exist. This error message is equivalent to the File not found message. However, this error occurs when the compiler is executed. The module name is the name of the module being called. The address is the address where the access error code is located. (Run-time error)
Error code: 53
File previously loaded
Attempting to load a file that already exists in memory. (Compile error)
Fixed-length string illegal
Trying to use a fixed-length string as a standard parameter. (Compile error)
FOR index variable already in use
This error will occur when the subscript variable is used multiple times in a nested FOR loop. (Compile error)
FOR index variable illegal
This error will occur when the wrong variable type is used in the FOR loop subscript. The FOR loop subscript variable must be a simple numeric variable. (Compile error)
FOR without NEXT
Each FOR statement must be accompanied by a NEXT statement. (Compile error)
Formal parameter specification illegal
There is an error in the parameter list of the function or subroutine. (Compile error)
Formal parameters not unique
The parameters specified for the function or subroutine appear repeatedly, such as: SUB Get Name(A,B,C,A) STATIC. (Compile error)
/
--------------------------------------------------------------------------------
●Boot error ●Link error
●Compile error ●Run-time error
Each type of error is related to a specific step in the program development process. A boot error may occur when using the QB or BC command to boot into QuickBASIC. A compile error (and warning) may occur during the compilation process. A run-time error may occur when the program is running. A link error may only occur when using the link command to link object files generated by BC or other language compilers.
Section 1.2 lists the boot, compile, and run-time error messages and all specified error codes in alphabetical order. Table 1.1 lists the run-time error messages and error codes in numerical order. Section 1.3 lists the Microsoft Overlay Linker error messages, and Section 1.4 lists the Microsoft Library Manager error messages.
1.1 Error Message Display
When a run-time error occurs in the environment (using the default screen display), the error message appears in the dialog box, and the cursor is placed on the line where the error occurred.
In an independent executable program (that is, a program that can be executed by entering the base name of the executable file at the system prompt), the run-time system prints an error message with an address, unless the /D, /E, or /W option is specified on the BC command line. In these cases, the error range is followed by the line number where the error occurred. The standard form of such an error message is as follows:
Error n in module module-name at address segment
ffset or Error n in line linenumber of module module-name at address segment
ffset Some errors have been included in the error code list. If an error occurs when entering the error trapping subroutine, the return value of ERR sets the corresponding code (the error trapping subroutine can be entered using the ON ERROR statement). The ERR value remains unchanged until the RESUME statement returns control to the main program.
Table 1.1 Run-time Error Codes
Deseription Code Deseription
2 syntax error 53 File not found
3 RETURN without GOSUB 54 Bad file mode
4 Out of DATA 55 File already open
5 Illegal function call 56 FIELD statement active
6 Overflow 57 Device I/O error
7 Out of memory 58 File already exists
9 Subscript out of rang 59 Bad record length
10 Duplicate definition 61 Disk full
11 Division by zero 62 Input past end of file
13 Type mismatch 63 Bad record number
14 Out of string space 64 Bad file name
16 String formula too complex 67 Too many files
19 No RESUME 68 Device unavailable
20 RESUME without error 69 Communication-buffer overflow
24 Device timeout 70 Permission denied
25 Device fault 71 Disk not ready
27 Out of paper 72 Disk-media error
39 CASE ELSE expected 73 Advanced feature unavailable
40 Variable requirted 74 Rename across disks
50 FIELD overflow 75 Path/File access error
51 Internal error 76 Path not found
52 Bad file name or number
(Table 1.1 lists the error codes in numerical order. For the explanation of the errors, please refer to the alphabetical list.)
1.2 Call, Compile, Run-time Error Messages
Argument-count mismatch
A function feature used in QuickBASIC that is applied in other BASIC versions, or this feature can only run under a high version of DOS. (Compile or run-time error) Error code: 73
Advanced feature unavailable
The number of parameters used in the BASIC subroutine or function is incorrect. (Compile error)
Array already dimensioned
The error may be caused by the following reasons:
●Using multiple DIM statements to define the same static array.
●Using the DIM statement after array initialization. Before redefining a dynamic array using DIM, you must use the ERASE statement to reallocate memory units; or redefine it using the REDIM statement.
●After the array is defined, the OPTION BASE statement appears (compile or run-time error)
Array not defined
Using an undefined array. (Compile error)
Array not dimensioned
Using an undefined array. If compiled with BC, this error is not "fatal", the program will be executed, but the result may be incorrect. (Compile error)
Array too big
There is not enough user data space to load the defined array. Please reduce the array size or use the $DYNAMIC meta-command. If the array space exceeds 64K, or the array is not dynamic and the /AH option is not used, this error will still occur. Please reduce the array space, or use the /AH command line option to make the array a dynamic array. (Compile error)
AS clause required
The variable defined with the AS statement has no parameters. If the AS clause is in the first definition of the variable, the AS clause must be in a series of statements related to the variable such as DIM, REDIM, SHARED, and COMMON statements. (Compile error)
AS clause required on first declaration
A variable that has not been defined with the AS clause uses the AS clause as a parameter. (Compile error)
AS missing
The compiler requires the keyword AS, such as in the OPEN "FILENAME" FOR INPUT AS#1 statement. (Compile error)
Asterisk missing
The asterisk (*) is missing in the user-defined string definition. (Compile error)
Bad file mode
The reasons for the error are as follows:
●The program uses the PUT or GET statement for sequential files, or uses the OPEN statement for non-I, O, or R file modes.
●Using the FIELD statement for a file that is not opened in random access mode.
●Performing output operations on a file opened in input form.
●Performing input operations on a file opened in output or append form.
●QuickBASIC attempts to use an include file stored in compressed format. The include file must be stored in text format. Reload the include file, store it in text format, and then run the program.
●Attempting to load an incorrect binary program. (Run-time error)
Error code: 54
Bad file name
The file name is illegal when using the LOAD, SAVE, KILL, or OPEN statement (for example, the file name has too many characters). (Run-time error)
Error code: 64
Bad file name or number
The file name or number used in the statement or command is not explained by the OPEN statement, or exceeds the number of files explained in the program. (Run-time error)
Error code: 52
Bad record length
The length of the record variable specified in the GET or PUT statement does not match the record length specified in the corresponding OPEN statement. (Run-time error)
Error code: 59
Bad record number
In the PUT or GET statement, the number of records is less than or equal to zero. (Run-time error)
Error code: 63
BASE missing
The Quick BASIC version requires the keyword BASE to appear here, such as in OPTION BASE. (Compile error)
Binary source file
The file being compiled is not an ASCII file. All source files stored in BASIC must use the A option. In a binary source file, if the user uses the /Z1 or /ZD CodeView option, QuickBASIC also uses this error message to prompt. (Compile error)
Block IF without END IF
There is no corresponding ENDIF statement in the IF structure block. (Compile error)
Buffer size expected after /C:
The buffer size must be defined after the /C option. (BC boot error)
BYVAL allowed only with numeric arguments
BYVAL does not accept string or record parameters. (Compile error)
/C:buffer size too large
The maximum capacity of the communication buffer is 32,767 bytes. (BC boot error)
Cannot continue
During debugging, the user's changes prevent continuous execution. (Run-time error)
Cannot find file (filename), Input path;
When QuickBASIC cannot find the Quick library or utility (BC.EXE, LINK.EXE, LIB.EXE, or QB.EXE) required by the program, this error message will appear. Please enter the correct path name, or press the CTRL+C key to return to the DOS prompt. (QB boot error)
Cannot generate listing for BASIC binary source files
Attempting to compile a binary source file with the BC command and the /A option. Please remove the /A option and recompile. (BC boot error)
Cannot start with 'FN'
Using "FN" as the first two letters of a subroutine or variable name. "FN" can only be used as the first two letters when calling the DEFFN function. (Compile error)
CASE ELSE expected
There is no matching case in the SELECT CASE statement. (Run-time error)
Error code: 39
CASE without SELECT
The first part of the SELECT CASE statement is missing or misspelled. (Compile error)
Colon expected after /C
A colon ":" is required between the option and the parameter of the buffer size. (BC boot error)
Comma missing
A comma "," is needed. (Compile error)
COMMON and DECLARE must precede executable statements
The position of the COMMON statement or DECLARE statement is incorrect. The COMMON and DECLARE statements must be placed before all executable statements. Except for the following statements, all BASIC statements are executable.
▲COMMON
▲DEFtype
▲DIM (applied to static variables)
▲OPTION BASE
▲REM
▲TYPE
▲All meta-commands
(Compile error)
COMMON in Quick library too small
There are more common variables in the module than the common variables currently loaded in the Quick library. (Compile error)
COMMON name illegal
In the block named COMMON, QuickBASIC encounters an illegal block name /blocknamel (for example, the block name is a BASIC reserved word). (Compile error)
Communication-buffer overflow
In remote communication, the receive buffer overflows. The size of the receive buffer is defined by the /C option or RB option in the OPEN COM statement. You should often check the buffer space or empty the buffer frequently (using the INPUT function) (Run-time error)
Error code: 69
CONST/DIM SHARED follows SUB/FUNCTION
The CONST and DIM SHARED statements should appear before the definition of all subroutines or FUNCTION procedures. If this program is compiled with BC, this error is not fatal, the program will be executed, but the running result may be incorrect. (Compile warning)
Controlstructure in IF...THEN...ELSE incomplete
A mismatched NEXT, WEND, ENDIF, END SELECT, or LOOP statement appears in the IF…THEN…ELSE one-line statement. (Compile error)
Data-memory overflow
There is too much program data in memory. This error is caused by too much data in constants or static arrays. If compiled with BC, or generating an EXE file or a Librory command, close all debugging options. If there is still not enough memory, please divide the user program into several parts and use the CHAIN statement or use the DYNAMIC meta-command. (C compile error)
DECLARE required
The process is not defined before the implicit call to the SUB or FUNCTION process. All processes must be defined or explained before the implicit call. (Compile error)
DEF FN not allowed in control statements
Defining a DEF FN function inside a control structure such as IF...THEN...ELSE and SELECT CASE is not allowed. (Compile error)
DEF without END DEF
There is no corresponding END DEF statement in the definition of a multi-line function. (Compile error)
DEF type character specification illegal
There is a mistake in entering the DEF type statement. Only LNG, DBL, INT, SNG, STR or space (for user-defined functions) can follow DEF. (Compile error)
Device fault
The drive returns a hardware error. If this message appears when data is transmitted to a communication file, it means that the signal tested by the OPEN COM statement was not detected during this period. (Run-time error)
Error code: 25
Device I/O error
An I/O error occurs during I/O operations on the drive, and the operating system cannot recover from the error state. (Run-time error)
Error code: 57
Device timeout
The program did not receive information from the drive within the scheduled time. (Run error)
Error code: 24
Device unavailable
The device that needs to be entered is not online or does not exist. (Run-time error)
Error code: 68
Disk full
When there is not enough disk space to complete the PRINT, WRITE, or CLOSE operation, Quick BASIC also generates this error message when writing the target file or executable file to the peripheral if there is not enough disk space. (Run-time error)
Error code: 61
Disk-media error
The disk drive hardware detected physical damage on the disk (run-time error)
Error code: 72
Disk not ready
The door of the drive is not closed, or there is no disk on the drive. (Run-time error)
Error code: 71
Division by zero
The divisor in the expression is zero, or the result of the exponent operation is a negative power of zero.
DO without LOOP
The LOOP termination clause is missing in the DO...LOOP statement. (Compile error)
Document too large
The file exceeds the internal limit of Quick BASIC. This file should be divided into several files.
Duplicate definition
Using a definition statement for an item that has been defined, for example, using the same name in the LONST statement and the variable definition statement, or the procedure has the same name as the variable.
This error also occurs when trying to redefine an array. When redefining a dynamic array, you must use DIM or REDIM (compile error or run-time error)
Error code: 10
Duplicate label
Two lines in the program share a number or mark. All line numbers or marks in a module must be unique.
(Compile error)
Dynamic array element illegal
Using a dynamic array element in VARPTR is not allowed. (Compile error)
Element not defined
The element of the user-defined type is not defined. For example, the user-defined type MYTYPE contains elements A, B, and C, and using variable D as an element in MY TYPE will cause this error. (Compile error)
ELSE without IF
Using the ELSE clause but without the corresponding IF statement. Sometimes this error is caused by incorrect IF statement nesting.
(Compile error)
ELSEIF without IF
Using the ELSE IF statement but without the corresponding IF statement. (Compile error)
END DEF without DEF
Using the ELSE DEF statement but without the corresponding DEF statement. (Compile error)
END IF without block IF
The start part of the IF program block is missing. (Compile error)
END SELECT without SELECT
There is only the END SELECT end statement, but no SELECT CASE start sentence. The SELECT CASE start sentence may be omitted (Compile error)
END SUB or END FUNCTION must be last line in window
Adding a code after a process must return to the main module or open another module. (Compile error)
END SUB/FUNCTION withcut SUB/FUNCTION
The user deleted the SUB or FUCTION statement. (Compile error)
END TYPE without TYPE
The END TYPE statement is missing TYPE. (Compile error)
Equal sign missing
Quick BASIC requires an equal sign. (Compile error)
Error during Quick BASIC initialization
There are many reasons for this error. The most common reason is that there is not enough memory space to load Quick BASIC. If the Quick library is loaded, the space occupied by this library should be reduced.
This error will also occur when using it on hardware that does not support Quick BASIC. (QB boot error)
Error in loading file (filename)-Cannot find file
This error will occur when redirecting input from a file to Quick BASIC. The input file is not in the position specified by the command line. (QB boot error)
Error in loading file (filename)-Disk I/O errorThis error is caused by physical problems during disk access, such as the drive door not being closed. (QB boot error)
Error in loading file (filename)-DOS memory-aera error
Writing an assembly language program or POKE statement to the memory area used by DOS. (QB boot error)
Error in loading file(filename)-Invalid format
Loading the Quick BASIC library in an illegal format. This error will occur when using a library established by a different version of Quick BASIC, or when using the /QU option not processed by the Quick BASIC library building command or LINK, or when loading an independent library with Quick BASIC. (QB boot error)
Error in loading file(filename)-Out of memory
The required memory space is larger than the available space. For example: there is not enough space to allocate the file buffer. Try reducing the DOS buffer, releasing programs that have terminated and are still in memory, or removing some device drivers. If the array is large, use the meta-command $DYNAMIC at the beginning of the program. If the file has been loaded, clearing these files can release some memory. (Run-time error)
EXIT DO not within DO...LOOP
The EXIT DO statement is used outside the DO...LOOP statement. (Compile error)
EXIT not within FOR...NEXT
The EXIT FOR statement is used outside the FOR...NEXT statement. (Compile error)
Expected:item
This is a syntax error. The cursor appears on an item that should not appear.
Expression too complex
This error will occur when exceeding a certain internal limit. For example, during the evaluation of an expression, a string irrelevant to the variable is temporarily assigned to the variable. The occurrence of a large number of such strings will cause this error. Please simplify the expression. Re-specify the variable that stores the expression. (Compile error)
Extra file name ignored
Too many files are specified on the command line; the last file on the line will be lost. (BC boot error)
Far heap corrupt
The far-heap storage has an error in the following situations:
●The QB compiler does not support programs that have terminated and remain in memory in DOS.
●The POKE statement modifies the memory area used by Quick BASIC. (This may modify the definition of dynamic arrays for numbers or fixed-length strings)
●The program calls a subroutine of another language, and this subroutine modifies the storage area used by Quick BASIC.
(This may modify the definition of dynamic arrays for numbers or fixed-length strings)
(Compile error)
FIELD overflow
The number of bytes allocated by the FIELD statement is greater than the record length specified in the random file.
(Run-time error)
Error code: 50
FIELD statement active
The space of the record variable used in the file GET or PUT statement has been occupied by the FIELD statement. The GET or PUT statement with the record variable parameter is only applied to files without the FIELD statement. (Run-time error)
Error code: 56
File already exists
The file name defined by the NAME statement is already used in the form of a file name on the disk. (Run-time error)
Error code: 58
File already open
Trying to open an already opened file from the OPEN statement in sequential output mode, or operating on an already opened file with the UNK statement.
(Run-time error)
Error code: 55
File not found
Operating on a non-existent file with FILES, KILL, NAME, OPEN, or RUN statements.
(Run-time error)
Error code: 53
File not found in module module-name at address segment
ffsetThe file in the FILE, KILL, NAME, OPEN, or RUN statement does not exist. This error message is equivalent to the File not found message. However, this error occurs when the compiler is executed. The module name is the name of the module being called. The address is the address where the access error code is located. (Run-time error)
Error code: 53
File previously loaded
Attempting to load a file that already exists in memory. (Compile error)
Fixed-length string illegal
Trying to use a fixed-length string as a standard parameter. (Compile error)
FOR index variable already in use
This error will occur when the subscript variable is used multiple times in a nested FOR loop. (Compile error)
FOR index variable illegal
This error will occur when the wrong variable type is used in the FOR loop subscript. The FOR loop subscript variable must be a simple numeric variable. (Compile error)
FOR without NEXT
Each FOR statement must be accompanied by a NEXT statement. (Compile error)
Formal parameter specification illegal
There is an error in the parameter list of the function or subroutine. (Compile error)
Formal parameters not unique
The parameters specified for the function or subroutine appear repeatedly, such as: SUB Get Name(A,B,C,A) STATIC. (Compile error)
ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
