[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Error Messages and Codes
Compiler Errors
Compiler error messages are numbered 1 thru 144 and identify errors
found during the compilation process. When a compiler error is
found the compilation process will stop, the error will be displayed
at the top of the screen, and the affected text will be highlighted.
# MESSAGE CAUSES & REMEDIES
----------------------------------------------------------------------------
1. Out of memory. There is insufficient memory free to
compile your program. There may be
several causes and fixes.
* Remove memory resident programs
* Break program into smaller units
* Set Compile/Destination to Disk
* Set Options/Compiler/Link/ buffer to Disk
* Use the command line compiler
2. Identifier Expected Check the variable you are trying to
identify, it may be a reserved word.
3. Unknown Identifier An identifier has not been declared.
4. Duplicate Identifier You are trying to redeclare a identifier
that has been previously declared in the
same block.
5. Syntax Error Illegal character(s) were found. Quotes
may be missing from a string constant.
6. Error in Real Constant Constant may have been mis-declared.
7. Error in Integer Constant Integer may have been mis-declared.
8. String Constant Exceeds Check for missing quotes at the end of
Line a string constant.
9. Too many nested files There is a limit of 5 nested files.
10. UnExpected end of source The end of source code may be encountered
due to:
* BEGIN/END commands may be mismatched
* Comments may not be closed.
* An include file end incorrectly.
11. Line too long You've exceeded the maximum of 126
characters per line.
12. Type Identifier Expected The identifier denotes an incorrect type.
13. Too many open files Modify your CONFIG.SYS file to increase
the maximum number of open files.
14. Invalid File Name The filename has been found to be either
invalid or has an invalid path.
15. File Not Found The file was not found in the specified
drive/path.
16. Disk Full The output path specified a full disk.
* Delete unnecessary files.
* Turn off the auto-backup feature.
17. Invalid Compiler Directive * A global directive was used in the
body of the program.
* The specified directive was incorrect
* You may have used a directive valid
in version 3.XX but not version 5.XX
18. Too Many Files The number of programs files exceeds
the compiler limits.
* Merge include files
* Make the filenames shorter
19. Undefined Type in The type was previously referenced as a
Pointer Definition pointer type, but was never declared.
20. Variable Identifier The identifier should identify a variable
Expected but it dos not.
21. Error In Type This symbol cannot be a type definition.
22. Structure too Large You have exceeded the maximum allowable
size of a structure. (65520 Bytes)
23. Set Base Type Out Of Range The range of the base type was either
less than 0 or greater than 255.
24. File components may not A file type cannot have a component of
be files or objects file type, object type, or any structured
type with a file type or object type
component.
25. Invalid String Length A string cannot be less than 1 or
greater than 255 characters.
26. Type Mismatch * Incompatible types of the variable and
the expression in an assignment statement
* Incompatible types of the actual and
formal parameters in a call to a function
or procedure.
* An expression type that is incompatible
with index type in array indexing.
* Incompatible types of operands in an
expression.
27. Invalid Subrange Base Type All ordinal type are valid base types.
28. Lower Bound Greater than When you declared a subrange base type
Upper Bound you declared the lower bound greater
than the upper bound.
29. Ordinal Type Expected This is the only type allowed here.
30. Integer Constant expected
31. Constant expected
32. Integer or Real Constant
Expected
33. Type identifier Expected The identifier does not denote a type.
34. Invalid Function Valid function result types are all simple
Result Type types, string types, and pointer types.
35. Label Identifier Expected
36. BEGIN Expected
37. END Expected
38. Integer Expression Expected
39. Ordinal Expression Expected
40. Boolean Expression Expected
41. Operand Types do not The operator cannot be applied to the
Match Operator operands of this type.
42. Error in Expression The symbol cannot participate in an
expression as it does. You may have
omitted an operator between two operands.
43. Illegal Assignment * Files or untyped variables cannot be
assigned values.
* A function identifier can only be
assigned values within the statement
part of the function.
44. Field Identifier Expected The record variable, required a field
identifier.
45. Object File Too Large The object file is greater the 64K.
46. Undefined External The external procedure or function had a
missing or incorrect public definition.
* Be sure to specify all object files
in {$L filename} directives.
* Check the spelling of the procedure or
function identifier in the .ASM file.
47. Invalid Object File Record
48. Code Segment too Large This segment has a limit of 65520 bytes.
Try breaking the procedure or function
into units, or smaller units.
49. Data Segment too Large The maximum size of this segment is 65520
Try using dynamic data structures.
50. DO Expected
51. Invalid Public Definition * An assembly language has a public
directive that has no corresponding
pascal directive.
* An assembly language defines the
same identifier twice.
* The Obj. file defines Public
symbols that do not reside in
the CODE segment.
52. Invalid EXTRN Definition * A identifier was referred to through
an EXTRN directive in assembly
language, but was not defined in
any of the pascal code.
* The identifier denotes an Absolute
value.
* The identifier denotes an inline
procedure or function.
53. Too many EXTERN Definitions The limit to the number of .Obj files
is 256.
54. OF Expected
55. INTERFACE Expected
56. Invalid Relocatable * The .Obj file contains data and other
Reference relocatable references in segments
other then CODE.
* You might have used the HIGH and LOW
operators with relocatable symbols,
or you tryed to use relocatable
symbols in DB directives.
* An operand refers to a relocatable
symbol that was not defined in the
CODE or DATA segments.
* An operand refers to an EXTRN procedure
or function with an offset.
57. Then Expected IF Statement is incomplete
58. TO or DOWNTO Expected FOR Statement is incomplete
59. Undefined Forward * You declared a procedure or function
in the interface section of the unit
but did not declare it in the
implementation section.
* You declared the procedure or function
with a forward declaration, but it
was never used.
60. Too Many Procedures You are only allowed 512 procedures or
functions for each module. Reduce the
size of the program or unit.
61. Invalid Typecast * The sizes of the variable reference
and the destination type differ.
* You have attempted to typecast an
expression where only a variable
reference is allowed.
62. Division by Zero
63. Invalid File Type The file handling procedure is not
compatible with the file type.
64. Cannot Read or Write Read/Readln & Write/Writeln can only
Variables of this Type input and output variables of char,
integer, real, and string types.
65. Pointer Variable Expected
66. String Variable Expected
67. String Expression Expected
68. Circular Unit Reference Two units are not permitted to make use
of one another.
69. Unit Name MisMatch The name of the unit found in the .TPU
file did not match the name of the
unit specified in the uses section.
70. Unit Version MisMatch One or more of the units have changed
since the last remake. Try to
recompile the units.
71. Duplicate Unit Name This name was previously used in the
uses section.
72. Unit File Format Error Invalid .TPU file.
73. Implementation Expected
74. Constant and Case Types The type of the Case constant is not
do not Match compatible with the case expression.
75. Record Variable Expected
76. Constant Out of Range You are trying to use a variable that
is out of its range.
77. File Variable Expected
78. Pointer Expression Expected
79. Integer or Real Expression
Expected
80. Label Not Within A goto statement cannot reference a
Current Block label outside of its block.
81. Label Already Defined.
82. Undefined Label in A label was declared and referenced in
Preceding Statement Block the preceding statement part, but was
never defined.
83. Invalid @ Argument Valid arguments are variable references
and procedures or function identifiers.
84. Unit Expected.
85. ; Expected
86. : Expected
87. , Expected
88. ( Expected
89. ) Expected
90. = Expected
91. := Expected
92. [ or (. Expected
93. ] or .) Expected
94. . Expected
95. .. Expected
96. Too Many Variables The total size of the global or local
variables cannot exceed 64K
97. Invalid For Control Loop The controlling variable must be of a
simple type, defined in that block.
98. Integer Variable Expected
99. Files and Procedure Types Typed constants cannot be a file type
Not Allowed Here or a procedure type.
100. String Length MisMatch The length of a string constant does
not match the number of components of
the character array.
101. Invalid ordering of fields The declaration of a record type
constant do not match the declaration.
102. String Constant Expected
103. Integer or Real Variable
Expected
104. Ordinal Variable Expected
105. Inline Error The < operator is not allowed in
conjunction with relocatable references
to variables.
106. Character Expression
Expected
107. Too Many Relocation Items Your program is too big for Turbo Pascal
112. Case Constant Out of Range Integer Case ranges are -32768..32767
113. Error in Statement A symbol was used that cannot start
a statement.
114. Cannot Call a Interrupt Interrupts cannot directly be called.
Procedure
116. Must have an 8087 to The {$N+} state was used.
Compile This
117. Target Address not Found Error search request could not find
statement.
118. Include Files are Not Every statement part must be entirely
Allowed Here contained in one file.
120. NIL Expected
121. Invalid Qualifier * A variable that is not an array is
being indexed.
* You are trying to specify fields
in a variable that is not a record.
* You are trying to de-referance a
variable that is not a pointer.
122. Invalid Variable Reference The preceding construct follows the
syntax of a variable, but does not
denote a memory location.
123. Too Many Symbols Each program or unit cannot contain
more than 64K of symbols. Turning
off Debug code {$D-}, or creating
smaller units may help.
124. Statement Part too large Each statement part is limited to
about 24K of code. If this error
occurs then try to simplify your
code by using smaller procedures or
functions.
126. Files Must be Var A File type has been declared as a value
Parameters parameter instead of a VAR parameter.
127. Too Many Conditional There is not enough room to define any
Symbols more conditional symbols.
128. Misplaced Conditional Compiler directives are not matched, ie
Directive a {$ELSE} was given without an {$IFDEF}
or other corresponding directive.
129. ENDIF Directive Missing The number of {$IFxxx} and {$ENDIF} does
match.
130. Error in Initial The compiler requires zero or more
Conditional Defines identifiers separated by blanks, tabs,
commas, or semicolons.
131. Header Does Not Match * The interface header does not match its
Previous Definition corresponding implementation section
procedure or function definition.
* A forward header does not match its
corresponding procedure or function
declaration.
132. Critical Disk Error
133. Cannot Evaluate this You may have attempted to use an unsupported
Expression feature in a constant expression or in a
debug expression. ie attepting to use the
SIN function in a CONST declaration.
134. Expression Incorrectly Either an operator or end of expression
Terminated was expected.
135. Invalid Format Specifier Either the format specifier is invalid or
the numeric argument of a format specifier
is out of range.
136. Invalid Indirect Reference * You may be using an absolute variable
whose base variable is not known in the
current module.
* You may be using an inline routine that
references a variable not known in the
current module.
137. Structured Variables Are You may have used record(s) in a formula
Not Allowed Here
138. Cannot Evaluate Without The TPL library must contain the system
System Unit unit for the debugger to be able to evaluate
expressions.
139. Cannot Access This Symbol Symbols such as variables cannot be accessed
until the program has been executed.
140. Invalid Floating Point An operation on two (or more) real types
Operation produced an overflow or divide by zero.
141. Cannot Compile Overlays Any program which uses overlays must be
to Memory compiled to disk.
142. Procedure or Function In this instance, the address operator (@)
Variable Expected can only be used with a procedure or a
function variable.
143. Invalid Procedure or * You have attempted to call a procedure
Function Reference in an expression.
* You must compile a procedure or function
must be compiled in the {$F+} state, and
cannot be declared with INLINE or
INTERRUPT, if it is to be assigned to
produce a variable.
144. Cannot Overlay This Unit You have attempted to overlay a unit which
was not compiled in the {$O+} state.
146. File Access Denied You are either trying to output to a
Read-Only file, or to a Directory name.
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson