2
# $Id: errore.msg,v 1.89 2004/05/23 11:39:38 peter Exp $
3
# This file is part of the Free Pascal Compiler
4
# Copyright (c) 1999-2000 by the Free Pascal Development team
6
# English (default) Language File for Free Pascal
8
# See the file COPYING.FPC, included in this distribution,
9
# for details about the copyright.
11
# This program is distributed in the hope that it will be useful,
12
# but WITHOUT ANY WARRANTY; without even the implied warranty of
13
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16
# The constants are build in the following order:
17
# <part>_<type>_<txtidentifier>
19
# <part> is the part of the compiler the message is used
20
# asmr_ assembler parsing
21
# asmw_ assembler writing/binary writers
27
# general_ general info
28
# exec_ calls to assembler, linker, binder
30
# <type> the type of the message it should normally used for
42
# x_ executable informations
48
# 01016 is the last used one
51
% \section{General compiler messages}
52
% This section gives the compiler messages which are not fatal, but which
53
% display useful information. The number of such messages can be
54
% controlled with the various verbosity level \var{-v} switches.
56
general_t_compilername=01000_T_Compiler: $1
57
% When the \var{-vt} switch is used, this line tells you what compiler
59
general_d_sourceos=01001_D_Compiler OS: $1
60
% When the \var{-vd} switch is used, this line tells you what the source
61
% operating system is.
62
general_i_targetos=01002_I_Target OS: $1
63
% When the \var{-vd} switch is used, this line tells you what the target
64
% operating system is.
65
general_t_exepath=01003_T_Using executable path: $1
66
% When the \var{-vt} switch is used, this line tells you where the compiler
67
% looks for it's binaries.
68
general_t_unitpath=01004_T_Using unit path: $1
69
% When the \var{-vt} switch is used, this line tells you where the compiler
70
% looks for compiled units. You can set this path with the \var{-Fu}
71
general_t_includepath=01005_T_Using include path: $1
72
% When the \var{-vt} switch is used, this line tells you where the compiler
73
% looks for it's include files (files used in \var{\{\$I xxx\}} statements).
74
% You can set this path with the \var{-I} option.
75
general_t_librarypath=01006_T_Using library path: $1
76
% When the \var{-vt} switch is used, this line tells you where the compiler
77
% looks for the libraries. You can set this path with the \var{-Fl} option.
78
general_t_objectpath=01007_T_Using object path: $1
79
% When the \var{-vt} switch is used, this line tells you where the compiler
80
% looks for object files you link in (files used in \var{\{\$L xxx\}} statements).
81
% You can set this path with the \var{-Fo} option.
82
general_i_abslines_compiled=01008_I_$1 Lines compiled, $2 sec
83
% When the \var{-vi} switch is used, the compiler reports the number
84
% of lines compiled, and the time it took to compile them (real time,
86
general_f_no_memory_left=01009_F_No memory left
87
% The compiler doesn't have enough memory to compile your program. There are
88
% several remedies for this:
90
% \item If you're using the build option of the compiler, try compiling the
91
% different units manually.
92
% \item If you're compiling a huge program, split it up in units, and compile
94
% \item If the previous two don't work, recompile the compiler with a bigger
95
% heap (you can use the \var{-Ch} option for this, \seeo{Ch})
97
general_i_writingresourcefile=01010_I_Writing Resource String Table file: $1
98
% This message is shown when the compiler writes the Resource String Table
99
% file containing all the resource strings for a program.
100
general_e_errorwritingresourcefile=01011_E_Writing Resource String Table file: $1
101
% This message is shown when the compiler encountered an error when writing
102
% the Resource String Table file
103
general_i_fatal=01012_I_Fatal:
104
% Prefix for Fatal Errors
105
general_i_error=01013_I_Error:
107
general_i_warning=01014_I_Warning:
108
% Prefix for Warnings
109
general_i_note=01015_I_Note:
111
general_i_hint=01016_I_Hint:
117
# 02061 is the last used one
119
% \section{Scanner messages.}
120
% This section lists the messages that the scanner emits. The scanner takes
121
% care of the lexical structure of the pascal file, i.e. it tries to find
122
% reserved words, strings, etc. It also takes care of directives and
123
% conditional compiling handling.
124
% \begin{description}
125
scan_f_end_of_file=02000_F_Unexpected end of file
126
% this typically happens in one of the following cases :
128
% \item The source file ends before the final \var{end.} statement. This
129
% happens mostly when the \var{begin} and \var{end} statements aren't
131
% \item An include file ends in the middle of a statement.
132
% \item A comment was not closed
134
scan_f_string_exceeds_line=02001_F_String exceeds line
135
% There is a missing closing ' in a string, so it occupies
137
scan_f_illegal_char=02002_F_illegal character "$1" ($2)
138
% An illegal character was encountered in the input file.
139
scan_f_syn_expected=02003_F_Syntax error, "$1" expected but "$2" found
140
% This indicates that the compiler expected a different token than
141
% the one you typed. It can occur almost everywhere where you make a
142
% mistake against the pascal language.
143
scan_t_start_include_file=02004_TL_Start reading includefile $1
144
% When you provide the \var{-vt} switch, the compiler tells you
145
% when it starts reading an included file.
146
scan_w_comment_level=02005_W_Comment level $1 found
147
% When the \var{-vw} switch is used, then the compiler warns you if
148
% it finds nested comments. Nested comments are not allowed in Turbo Pascal
149
% and can be a possible source of errors.
150
scan_n_ignored_switch=02008_N_Ignored compiler switch "$1"
151
% With \var{-vn} on, the compiler warns if it ignores a switch
152
scan_w_illegal_switch=02009_W_Illegal compiler switch "$1"
153
% You included a compiler switch (i.e. \var{\{\$... \}}) which the compiler
155
scan_w_switch_is_global=02010_W_Misplaced global compiler switch
156
% The compiler switch is misplaced, and should be located at
157
% the start of the unit or program.
158
scan_e_illegal_char_const=02011_E_Illegal char constant
159
% This happens when you specify a character with its ASCII code, as in
160
% \var{\#96}, but the number is either illegal, or out of range.
161
scan_f_cannot_open_input=02012_F_Can't open file "$1"
162
% \fpc cannot find the program or unit source file you specified on the
164
scan_f_cannot_open_includefile=02013_F_Can't open include file "$1"
165
% \fpc cannot find the source file you specified in a \var{\{\$include ..\}}
167
scan_w_only_pack_records=02015_W_Records fields can be aligned to 1,2,4,8,16 or 32 bytes only
168
% You are specifying the \var{\{\$PACKRECORDS n\} } with an illegal value for
169
% \var{n}. Only 1, 2, 4, 8, 16 and 32 are valid in this case.
170
scan_w_only_pack_enum=02016_W_Enumerated can be saved in 1,2 or 4 bytes only
171
% You are specifying the \var{\{\$PACKENUM n\}} with an illegal value for
172
% \var{n}. Only 1,2 or 4 are valid in this case.
173
scan_e_endif_expected=02017_E_$ENDIF expected for $1 $2 defined in $3 line $4
174
% Your conditional compilation statements are unbalanced.
175
scan_e_preproc_syntax_error=02018_E_Syntax error while parsing a conditional compiling expression
176
% There is an error in the expression following the \var{\{\$if ..\}} compiler
178
scan_e_error_in_preproc_expr=02019_E_Evaluating a conditional compiling expression
179
% There is an error in the expression following the \var{\{\$if ..\}} compiler
181
scan_w_macro_cut_after_255_chars=02020_W_Macro contents are limited to 255 characters in length
182
% The contents of macros cannot be longer than 255 characters.
183
scan_e_endif_without_if=02021_E_ENDIF without IF(N)DEF
184
% Your \var{\{\$IFDEF ..\}} and {\{\$ENDIF\}} statements aren't balanced.
185
scan_f_user_defined=02022_F_User defined: $1
186
% A user defined fatal error occurred. see also the \progref
187
scan_e_user_defined=02023_E_User defined: $1
188
% A user defined error occurred. see also the \progref
189
scan_w_user_defined=02024_W_User defined: $1
190
% A user defined warning occurred. see also the \progref
191
scan_n_user_defined=02025_N_User defined: $1
192
% A user defined note was encountered. see also the \progref
193
scan_h_user_defined=02026_H_User defined: $1
194
% A user defined hint was encountered. see also the \progref
195
scan_i_user_defined=02027_I_User defined: $1
196
% User defined information was encountered. see also the \progref
197
scan_e_keyword_cant_be_a_macro=02028_E_Keyword redefined as macro has no effect
198
% You cannot redefine keywords with macros.
199
scan_f_macro_buffer_overflow=02029_F_Macro buffer overflow while reading or expanding a macro
200
% Your macro or it's result was too long for the compiler.
201
scan_w_macro_deep_ten=02030_W_Extension of macros exceeds a depth of 16.
202
% When expanding a macro macros have been nested to a level of 16.
203
% The compiler will expand no further, since this may be a sign that
205
scan_w_wrong_styled_switch=02031_W_compiler switches aren't supported in // styled comments
206
% Compiler switches should be in normal pascal style comments.
207
scan_d_handling_switch=02032_DL_Handling switch "$1"
208
% When you set debugging info on (\var{-vd}) the compiler tells you when it
209
% is evaluating conditional compile statements.
210
scan_c_endif_found=02033_CL_ENDIF $1 found
211
% When you turn on conditional messages(\var{-vc}), the compiler tells you
212
% where it encounters conditional statements.
213
scan_c_ifdef_found=02034_CL_IFDEF $1 found, $2
214
% When you turn on conditional messages(\var{-vc}), the compiler tells you
215
% where it encounters conditional statements.
216
scan_c_ifopt_found=02035_CL_IFOPT $1 found, $2
217
% When you turn on conditional messages(\var{-vc}), the compiler tells you
218
% where it encounters conditional statements.
219
scan_c_if_found=02036_CL_IF $1 found, $2
220
% When you turn on conditional messages(\var{-vc}), the compiler tells you
221
% where it encounters conditional statements.
222
scan_c_ifndef_found=02037_CL_IFNDEF $1 found, $2
223
% When you turn on conditional messages(\var{-vc}), the compiler tells you
224
% where it encounters conditional statements.
225
scan_c_else_found=02038_CL_ELSE $1 found, $2
226
% When you turn on conditional messages(\var{-vc}), the compiler tells you
227
% where it encounters conditional statements.
228
scan_c_skipping_until=02039_CL_Skipping until...
229
% When you turn on conditional messages(\var{-vc}), the compiler tells you
230
% where it encounters conditional statements, and whether it is skipping or
232
scan_i_press_enter=02040_I_Press <return> to continue
233
% When the \var{-vi} switch is used, the compiler stops compilation
234
% and waits for the \var{Enter} key to be pressed when it encounters
235
% a \var{\{\$STOP\}} directive.
236
scan_w_unsupported_switch=02041_W_Unsupported switch "$1"
237
% When warnings are turned on (\var{-vw}) the compiler warns you about
238
% unsupported switches. This means that the switch is used in Delphi or
239
% Turbo Pascal, but not in \fpc
240
scan_w_illegal_directive=02042_W_Illegal compiler directive "$1"
241
% When warings are turned on (\var{-vw}) the compiler warns you about
242
% unrecognised switches. For a list of recognised switches, \progref
243
scan_t_back_in=02043_TL_Back in $1
244
% When you use (\var{-vt}) the compiler tells you when it has finished
245
% reading an include file.
246
scan_w_unsupported_app_type=02044_W_Unsupported application type: "$1"
247
% You get this warning, ff you specify an unknown application type
248
% with the directive \var{\{\$APPTYPE\}}
249
scan_w_app_type_not_support=02045_W_APPTYPE is not supported by the target OS
250
% The \var{\{\$APPTYPE\}} directive is supported by certain operating systems only.
251
scan_w_description_not_support=02046_W_DESCRIPTION is not supported by the target OS
252
% The \var{\{\$DESCRIPTION\}} directive is not supported on this target OS
253
scan_n_version_not_support=02047_N_VERSION is not supported by target OS
254
% The \var{\{\$VERSION\}} directive is not supported on this target OS
255
scan_n_only_exe_version=02048_N_VERSION only for exes or DLLs
256
% The \var{\{\$VERSION\}} directive is only used for executable or DLL sources.
257
scan_w_wrong_version_ignored=02049_W_Wrong format for VERSION directive "$1"
258
% The \var{\{\$VERSION\}} directive format is majorversion.minorversion
259
% where majorversion and minorversion are words.
260
scan_e_illegal_asmmode_specifier=02050_E_Illegal assembler style specified "$1"
261
% When you specify an assembler mode with the \var{\{\$ASMMODE xxx\}}
262
% the compiler didn't recognize the mode you specified.
263
scan_w_no_asm_reader_switch_inside_asm=02051_W_ASM reader switch is not possible inside asm statement, "$1" will be effective only for next
264
% It is not possible to switch from one assembler reader to another
265
% inside an assmebler block. The new reader will be used for next
266
% assembler statements only.
267
scan_e_wrong_switch_toggle=02052_E_Wrong switch toggle, use ON/OFF or +/-
268
% You need to use ON or OFF or a + or - to toggle the switch
269
scan_e_resourcefiles_not_supported=02053_E_Resource files are not supported for this target
270
% The target you are compiling for doesn't support resource files.
271
scan_w_include_env_not_found=02054_W_Include environment "$1" not found in environment
272
% The included environment variable can't be found in the environment, it will
273
% be replaced by an empty string instead.
274
scan_e_invalid_maxfpureg_value=02055_E_Illegal value for FPU register limit
275
% Valid values for this directive are 0..8 and NORMAL/DEFAULT
276
scan_w_only_one_resourcefile_supported=02056_W_Only one resource file is supported for this target
277
% The target you are compiling for supports only one resource file.
278
% The first resource file found is used, the others are discarded.
279
scan_w_macro_support_turned_off=02057_W_Macro support has been turned off
280
% A macro declaration has been found, but macro support is currently off,
281
% so the declaration will be ignored. To turn macro support on compile with
282
% -Sm on the commandline or add {$MACRO ON} in the source
283
scan_e_invalid_interface_type=02058_E_Illegal interface type specified. Valids are COM, CORBA or DEFAULT.
284
% The interface type that was specified is not supported
285
scan_w_appid_not_support=02059_W_APPID is only supported for PalmOS
286
% The \var{\{\$APPID\}} directive is only supported for the PalmOS target.
287
scan_w_appname_not_support=02060_W_APPNAME is only supported for PalmOS
288
% The \var{\{\$APPNAME\}} directive is only supported for the PalmOS target.
289
scan_e_string_exceeds_255_chars=02061_E_Constant strings can't be longer than 255 chars
290
% A single string constant can contain at most 255 chars. Try splitting up the
291
% string in multiple smaller parts and concatenate them with a + operator.
292
scan_f_include_deep_ten=02062_F_Including include files exceeds a depth of 16.
293
% When including include files the files have been nested to a level of 16.
294
% The compiler will expand no further, since this may be a sign that
300
# 03192 is the last used one
302
% \section{Parser messages}
303
% This section lists all parser messages. The parser takes care of the
304
% semantics of you language, i.e. it determines if your pascal constructs
306
% \begin{description}
307
parser_e_syntax_error=03000_E_Parser - Syntax Error
308
% An error against the Turbo Pascal language was encountered. This happens
309
% typically when an illegal character is found in the sources file.
310
parser_e_dont_nest_interrupt=03004_E_INTERRUPT procedure can't be nested
311
% An \var{INTERRUPT} procedure must be global.
312
parser_w_proc_directive_ignored=03005_W_Procedure type "$1" ignored
313
% The specified is ignored by FPC programs.
314
parser_e_no_overload_for_all_procs=03006_E_Not all declarations of "$1" are declared with OVERLOAD
315
% When you want to use overloading using the \var{OVERLOAD} directive, then
316
% all declarations need to have \var{OVERLOAD} specified.
317
parser_e_export_name_double=03008_E_Duplicate exported function name "$1"
318
% Exported function names inside a specific DLL must all be different
319
parser_e_export_ordinal_double=03009_E_Duplicate exported function index $1
320
% Exported function names inside a specific DLL must all be different
321
parser_e_export_invalid_index=03010_E_Invalid index for exported function
322
% DLL function index must be in the range \var{1..\$FFFF}
323
parser_w_parser_reloc_no_debug=03011_W_Relocatable DLL or executable $1 debug info does not work, disabled.
324
parser_w_parser_win32_debug_needs_WN=03012_W_To allow debugging for win32 code you need to disable relocation with -WN option
325
% Stabs info is wrong for relocatable DLL or EXES use -WN
326
% if you want to debug win32 executables.
327
parser_e_constructorname_must_be_init=03013_E_Constructor name must be INIT
328
% You are declaring an object constructor with a name which is not \var{init}, and the
329
% \var{-Ss} switch is in effect. See the \var{-Ss} switch (\seeo{Ss}).
330
parser_e_destructorname_must_be_done=03014_E_Destructor name must be DONE
331
% You are declaring an object destructor with a name which is not \var{done}, and the
332
% \var{-Ss} switch is in effect. See the \var{-Ss} switch (\seeo{Ss}).
333
parser_e_proc_inline_not_supported=03016_E_Procedure type INLINE not supported
334
% You tried to compile a program with C++ style inlining, and forgot to
335
% specify the \var{-Si} option (\seeo{Si}). The compiler doesn't support C++
336
% styled inlining by default.
337
parser_w_constructor_should_be_public=03018_W_Constructor should be public
338
% Constructors must be in the 'public' part of an object (class) declaration.
339
parser_w_destructor_should_be_public=03019_W_Destructor should be public
340
% Destructors must be in the 'public' part of an object (class) declaration.
341
parser_n_only_one_destructor=03020_N_Class should have one destructor only
342
% You can declare only one destructor for a class.
343
parser_e_no_local_objects=03021_E_Local class definitions are not allowed
344
% Classes must be defined globally. They cannot be defined inside a
345
% procedure or function
346
parser_f_no_anonym_objects=03022_F_Anonym class definitions are not allowed
347
% An invalid object (class) declaration was encountered, i.e. an
348
% object or class without methods that isn't derived from another object or
349
% class. For example:
355
% will trigger this error.
356
parser_n_object_has_no_vmt=03023_N_The object "$1" has no VMT
357
% This is a note indicating that the declared object has no
358
% virtual method table.
359
parser_e_illegal_parameter_list=03024_E_Illegal parameter list
360
% You are calling a function with parameters that are of a different type than
361
% the declared parameters of the function.
362
parser_e_wrong_parameter_size=03026_E_Wrong number of parameters specified
363
% There is an error in the parameter list of the function or procedure,
364
% the number of parameters is not correct.
365
parser_e_overloaded_no_procedure=03027_E_overloaded identifier "$1" isn't a function
366
% The compiler encountered a symbol with the same name as an overloaded
367
% function, but it is not a function it can overload.
368
parser_e_overloaded_have_same_parameters=03028_E_overloaded functions have the same parameter list
369
% You're declaring overloaded functions, but with the same parameter list.
370
% Overloaded function must have at least 1 different parameter in their
372
parser_e_header_dont_match_forward=03029_E_function header doesn't match the forward declaration "$1"
373
% You declared a function with same parameters but
374
% different result type or function modifiers.
375
parser_e_header_different_var_names=03030_E_function header "$1" doesn't match forward : var name changes $2 => $3
376
% You declared the function in the \var{interface} part, or with the
377
% \var{forward} directive, but define it with a different parameter list.
378
parser_n_duplicate_enum=03031_N_Values in enumeration types have to be ascending
379
% \fpc allows enumeration constructions as in C. Given the following
380
% declaration two declarations:
382
% type a = (A_A,A_B,A_E:=6,A_UAS:=200);
383
% type a = (A_A,A_B,A_E:=6,A_UAS:=4);
385
% The second declaration would produce an error. \var{A\_UAS} needs to have a
386
% value higher than \var{A\_E}, i.e. at least 7.
387
parser_e_no_with_for_variable_in_other_segments=03033_E_With can not be used for variables in a different segment
388
% With stores a variable locally on the stack,
389
% but this is not possible if the variable belongs to another segment.
390
parser_e_too_much_lexlevel=03034_E_function nesting > 31
391
% You can nest function definitions only 31 times.
392
parser_e_range_check_error=03035_E_range check error while evaluating constants
393
% The constants are out of their allowed range.
394
parser_w_range_check_error=03036_W_range check error while evaluating constants
395
% The constants are out of their allowed range.
396
parser_e_double_caselabel=03037_E_duplicate case label
397
% You are specifying the same label 2 times in a \var{case} statement.
398
parser_e_case_lower_less_than_upper_bound=03038_E_Upper bound of case range is less than lower bound
399
% The upper bound of a \var{case} label is less than the lower bound and this
401
parser_e_type_const_not_possible=03039_E_typed constants of classes are not allowed
402
% You cannot declare a constant of type class or object.
403
parser_e_no_overloaded_procvars=03040_E_functions variables of overloaded functions are not allowed
404
% You are trying to assign an overloaded function to a procedural variable.
405
% This is not allowed
406
parser_e_invalid_string_size=03041_E_string length must be a value from 1 to 255
407
% The length of a shortstring in Pascal is limited to 255 characters. You are
408
% trying to declare a string with length lower than 1 or greater than 255
409
parser_w_use_extended_syntax_for_objects=03042_W_use extended syntax of NEW and DISPOSE for instances of objects
410
% If you have a pointer \var{a} to a class type, then the statement
411
% \var{new(a)} will not initialize the class (i.e. the constructor isn't
412
% called), although space will be allocated. you should issue the
413
% \var{new(a,init)} statement. This will allocate space, and call the
414
% constructor of the object
415
parser_w_no_new_dispose_on_void_pointers=03043_W_use of NEW or DISPOSE for untyped pointers is meaningless
416
parser_e_no_new_dispose_on_void_pointers=03044_E_use of NEW or DISPOSE is not possible for untyped pointers
417
% You cannot use \var{new(p)} or \var{dispose(p)} if \var{p} is an untyped pointer
418
% because no size is associated to an untyped pointer.
419
% Accepted for compatibility in \var{tp} and \var{delphi} modes.
420
parser_e_class_id_expected=03045_E_class identifier expected
421
% This happens when the compiler scans a procedure declaration that contains
423
% i.e., a object or class method, but the type in front of the dot is not
425
parser_e_no_type_not_allowed_here=03046_E_type identifier not allowed here
426
% You cannot use a type inside an expression.
427
parser_e_methode_id_expected=03047_E_method identifier expected
428
% This identifier is not a method.
429
% This happens when the compiler scans a procedure declaration that contains
430
% a dot, i.e., a object or class method, but the procedure name is not a
431
% procedure of this type.
432
parser_e_header_dont_match_any_member=03048_E_function header doesn't match any method of this class "$1"
433
% This identifier is not a method.
434
% This happens when the compiler scans a procedure declaration that contains
435
% a dot, i.e., a object or class method, but the procedure name is not a
436
% procedure of this type.
437
parser_d_procedure_start=03049_DL_procedure/function $1
438
% When using the \var{-vd} switch, the compiler tells you when it starts
439
% processing a procedure or function implementation.
440
parser_e_error_in_real=03050_E_Illegal floating point constant
441
% The compiler expects a floating point expression, and gets something else.
442
parser_e_fail_only_in_constructor=03051_E_FAIL can be used in constructors only
443
% You are using the \var{fail} keyword outside a constructor method.
444
parser_e_no_paras_for_destructor=03052_E_Destructors can't have parameters
445
% You are declaring a destructor with a parameter list. Destructor methods
446
% cannot have parameters.
447
parser_e_only_class_methods_via_class_ref=03053_E_Only class methods can be referred with class references
448
% This error occurs in a situation like the following:
451
% Tclass = Class of Tobject;
459
% \var{Free} is not a class method and hence cannot be called with a class
461
parser_e_only_class_methods=03054_E_Only class methods can be accessed in class methods
462
% This is related to the previous error. You cannot call a method of an object
463
% from a inside a class method. The following code would produce this error:
465
% class procedure tobject.x;
470
% Because free is a normal method of a class it cannot be called from a class
472
parser_e_case_mismatch=03055_E_Constant and CASE types do not match
473
% One of the labels is not of the same type as the case variable.
474
parser_e_illegal_symbol_exported=03056_E_The symbol can't be exported from a library
475
% You can only export procedures and functions when you write a library. You
476
% cannot export variables or constants.
477
parser_w_should_use_override=03057_W_An inherited method is hidden by "$1"
478
% A method that is declared \var{virtual} in a parent class, should be
479
% overridden in the descendent class with the \var{override} directive. If you
480
% don't specify the \var{override} directive, you will hide the parent method;
481
% you will not override it.
482
parser_e_nothing_to_be_overridden=03058_E_There is no method in an ancestor class to be overridden: "$1"
483
% You are trying to \var{override} a virtual method of a parent class that does
485
parser_e_no_procedure_to_access_property=03059_E_No member is provided to access property
486
% You specified no \var{read} directive for a property.
487
parser_w_stored_not_implemented=03060_W_Stored prorperty directive is not yet implemented
488
% The \var{stored} directive is not yet implemented
489
parser_e_ill_property_access_sym=03061_E_Illegal symbol for property access
490
% There is an error in the \var{read} or \var{write} directives for an array
491
% property. When you declare an array property, you can only access it with
492
% procedures and functions. The following code woud cause such an error.
496
% property x [i : integer]: integer read I write i;
499
parser_e_cant_access_protected_member=03062_E_Cannot access a protected field of an object here
500
% Fields that are declared in a \var{protected} section of an object or class
501
% declaration cannot be accessed outside the module wher the object is
502
% defined, or outside descendent object methods.
503
parser_e_cant_access_private_member=03063_E_Cannot access a private field of an object here
504
% Fields that are declared in a \var{private} section of an object or class
505
% declaration cannot be accessed outside the module where the class is
507
parser_e_overridden_methods_not_same_ret=03066_E_overridden methods must have the same return type: "$2" is overriden by "$1" which has another return type
508
% If you declare overridden methods in a class definition, they must
509
% have the same return type.
510
parser_e_dont_nest_export=03067_E_EXPORT declared functions can't be nested
511
% You cannot declare a function or procedure within a function or procedure
512
% that was declared as an export procedure.
513
parser_e_methods_dont_be_export=03068_E_methods can't be EXPORTed
514
% You cannot declare a procedure that is a method for an object as
516
parser_e_call_by_ref_without_typeconv=03069_E_call by var parameters have to match exactly: Got "$1" expected "$2"
517
% When calling a function declared with \var{var} parameters, the variables in
518
% the function call must be of exactly the same type. There is no automatic
520
parser_e_no_super_class=03070_E_Class isn't a parent class of the current class
521
% When calling inherited methods, you are trying to call a method of a non-related
522
% class. You can only call an inherited method of a parent class.
523
parser_e_self_not_in_method=03071_E_SELF is only allowed in methods
524
% You are trying to use the \var{self} parameter outside an object's method.
525
% Only methods get passed the \var{self} parameters.
526
parser_e_generic_methods_only_in_methods=03072_E_methods can be only in other methods called direct with type identifier of the class
527
% A construction like \var{sometype.somemethod} is only allowed in a method.
528
parser_e_illegal_colon_qualifier=03073_E_Illegal use of ':'
529
% You are using the format \var{:} (colon) 2 times on an expression that
530
% is not a real expression.
531
parser_e_illegal_set_expr=03074_E_range check error in set constructor or duplicate set element
532
% The declaration of a set contains an error. Either one of the elements is
533
% outside the range of the set type, either two of the elements are in fact
535
parser_e_pointer_to_class_expected=03075_E_Pointer to object expected
536
% You specified an illegal type in a \var{new} statement.
537
% The extended syntax of \var{new} needs an object as a parameter.
538
parser_e_expr_have_to_be_constructor_call=03076_E_Expression must be constructor call
539
% When using the extended syntax of \var{new}, you must specify the constructor
540
% method of the object you are trying to create. The procedure you specified
541
% is not a constructor.
542
parser_e_expr_have_to_be_destructor_call=03077_E_Expression must be destructor call
543
% When using the extended syntax of \var{dispose}, you must specify the
544
% destructor method of the object you are trying to dispose of.
545
% The procedure you specified is not a destructor.
546
parser_e_invalid_record_const=03078_E_Illegal order of record elements
547
% When declaring a constant record, you specified the fields in the wrong
549
parser_e_false_with_expr=03079_E_Expression type must be class or record type
550
% A \var{with} statement needs an argument that is of the type \var{record}
551
% or \var{class}. You are using \var{with} on an expression that is not of
553
parser_e_void_function=03080_E_Procedures can't return a value
554
% In \fpc, you can specify a return value for a function when using
555
% the \var{exit} statement. This error occurs when you try to do this with a
556
% procedure. Procedures cannot return a value.
557
parser_e_constructors_always_objects=03081_E_constructors and destructors must be methods
558
% You're declaring a procedure as destructor or constructor, when the
559
% procedure isn't a class method.
560
parser_e_operator_not_overloaded=03082_E_Operator is not overloaded
561
% You're trying to use an overloaded operator when it is not overloaded for
563
parser_e_no_such_assignment=03083_E_Impossible to overload assignment for equal types
564
% You can not overload assignment for types
565
% that the compiler considers as equal.
566
parser_e_overload_impossible=03084_E_Impossible operator overload
567
% The combination of operator, arguments and return type are
569
parser_e_no_reraise_possible=03085_E_Re-raise isn't possible there
570
% You are trying to raise an exception where it is not allowed. You can only
571
% raise exceptions in an \var{except} block.
572
parser_e_no_new_or_dispose_for_classes=03086_E_The extended syntax of new or dispose isn't allowed for a class
573
% You cannot generate an instance of a class with the extended syntax of
574
% \var{new}. The constructor must be used for that. For the same reason, you
575
% cannot call \var{dispose} to de-allocate an instance of a class, the
576
% destructor must be used for that.
577
parser_e_procedure_overloading_is_off=03088_E_Procedure overloading is switched off
578
% When using the \var{-So} switch, procedure overloading is switched off.
579
% Turbo Pascal does not support function overloading.
580
parser_e_overload_operator_failed=03089_E_It is not possible to overload this operator (overload = instead)
581
% You are trying to overload an operator which cannot be overloaded.
582
% The following operators can be overloaded :
584
% +, -, *, /, =, >, <, <=, >=, is, as, in, **, :=
586
parser_e_comparative_operator_return_boolean=03090_E_Comparative operator must return a boolean value
587
% When overloading the \var{=} operator, the function must return a boolean
589
parser_e_only_virtual_methods_abstract=03091_E_Only virtual methods can be abstract
590
% You are declaring a method as abstract, when it is not declared to be
592
parser_f_unsupported_feature=03092_F_Use of unsupported feature!
593
% You're trying to force the compiler into doing something it cannot do yet.
594
parser_e_mix_of_classes_and_objects=03093_E_The mix of different kind of objects (class, object, interface, etc) isn't allowed
595
% You cannot derive \var{objects}, \var{classes}, \var{cppclasses} and \var{interfaces} interttwined . E.g.
596
% a class cannot have an object as parent and vice versa.
597
parser_w_unknown_proc_directive_ignored=03094_W_Unknown procedure directive had to be ignored: "$1"
598
% The procedure directive you specified is unknown.
599
parser_e_absolute_only_one_var=03095_E_absolute can only be associated to one variable
600
% You cannot specify more than one variable before the \var{absolute} directive.
601
% Thus, the following construct will provide this error:
604
% X,Y : Longint absolute Z;
606
% \item [ absolute can only be associated a var or const ]
607
% The address of a \var{absolute} directive can only point to a variable or a
608
% typed constant. Therefore, the following code will produce this error:
612
% var p : longint absolute x;
615
parser_e_absolute_only_to_var_or_const=03096_E_absolute can only be associated with a var or const
616
% The address of a \var{absolute} directive can only point to a variable or
617
% constant. Therefore, the following code will produce this error:
621
% var p : longint absolute x;
624
parser_e_initialized_only_one_var=03097_E_Only one variable can be initialized
625
% You cannot specify more than one variable with a initial value
627
parser_e_abstract_no_definition=03098_E_Abstract methods shouldn't have any definition (with function body)
628
% Abstract methods can only be declared, you cannot implement them. They
629
% should be overridden by a descendant class.
630
parser_e_overloaded_must_be_all_global=03099_E_This overloaded function can't be local (must be exported)
631
% You are defining a overloaded function in the implementation part of a unit,
632
% but there is no corresponding declaration in the interface part of the unit.
633
parser_w_virtual_without_constructor=03100_W_Virtual methods are used without a constructor in "$1"
634
% If you declare objects or classes that contain virtual methods, you need
635
% to have a constructor and destructor to initialize them. The compiler
636
% encountered an object or class with virtual methods that doesn't have
637
% a constructor/destructor pair.
638
parser_c_macro_defined=03101_CL_Macro defined: $1
639
% When \var{-vc} is used, the compiler tells you when it defines macros.
640
parser_c_macro_undefined=03102_CL_Macro undefined: $1
641
% When \var{-vc} is used, the compiler tells you when it undefines macros.
642
parser_c_macro_set_to=03103_CL_Macro $1 set to $2
643
% When \var{-vc} is used, the compiler tells you what values macros get.
644
parser_i_compiling=03104_I_Compiling $1
645
% When you turn on information messages (\var{-vi}), the compiler tells you
646
% what units it is recompiling.
647
parser_u_parsing_interface=03105_UL_Parsing interface of unit $1
648
% This tells you that the reading of the interface
649
% of the current unit starts
650
parser_u_parsing_implementation=03106_UL_Parsing implementation of $1
651
% This tells you that the code reading of the implementation
652
% of the current unit, library or program starts
653
parser_d_compiling_second_time=03107_DL_Compiling $1 for the second time
654
% When you request debug messages (\var{-vd}) the compiler tells you what
655
% units it recompiles for the second time.
656
parser_e_no_property_found_to_override=03109_E_No property found to override
657
% You want to overrride a property of a parent class, when there is, in fact,
658
% no such property in the parent class.
659
parser_e_only_one_default_property=03110_E_Only one default property is allowed, found inherited default property in class "$1"
660
% You specified a property as \var{Default}, but a parent class already has a
661
% default property, and a class can have only one default property.
662
parser_e_property_need_paras=03111_E_The default property must be an array property
663
% Only array properties of classes can be made \var{default} properties.
664
parser_e_constructor_cannot_be_not_virtual=03112_E_Virtual constructors are only supported in class object model
665
% You cannot have virtual constructors in objects. You can only have them
667
parser_e_no_default_property_available=03113_E_No default property available
668
% You are trying to access a default property of a class, but this class (or one of
669
% it's ancestors) doesn't have a default property.
670
parser_e_cant_have_published=03114_E_The class can't have a published section, use the {$M+} switch
671
% If you want a \var{published} section in a class definition, you must
672
% use the \var{\{\$M+\}} switch, whch turns on generation of type
674
parser_e_forward_declaration_must_be_resolved=03115_E_Forward declaration of class "$1" must be resolved here to use the class as ancestor
675
% To be able to use an object as an ancestor object, it must be defined
676
% first. This error occurs in the following situation:
678
% Type ParentClas = Class;
679
% ChildClass = Class(ParentClass)
683
% Where \var{ParentClass} is declared but not defined.
684
parser_e_no_local_operator=03116_E_Local operators not supported
685
% You cannot overload locally, i.e. inside procedures or function
687
parser_e_proc_dir_not_allowed_in_interface=03117_E_Procedure directive "$1" not allowed in interface section
688
% This procedure directive is not allowed in the \var{interface} section of
689
% a unit. You can only use it in the \var{implementation} section.
690
parser_e_proc_dir_not_allowed_in_implementation=03118_E_Procedure directive "$1" not allowed in implementation section
691
% This procedure directive is not defined in the \var{implementation} section of
692
% a unit. You can only use it in the \var{interface} section.
693
parser_e_proc_dir_not_allowed_in_procvar=03119_E_Procedure directive "$1" not allowed in procvar declaration
694
% This procedure directive cannot be part of a procedural or function
696
parser_e_function_already_declared_public_forward=03120_E_Function is already declared Public/Forward "$1"
697
% You will get this error if a function is defined as \var{forward} twice.
698
% Or it is once in the \var{interface} section, and once as a \var{forward}
699
% declaration in the \var{implmentation} section.
700
parser_e_not_external_and_export=03121_E_Can't use both EXPORT and EXTERNAL
701
% These two procedure directives are mutually exclusive
702
parser_w_not_supported_for_inline=03123_W_"$1" not yet supported inside inline procedure/function
703
% Inline procedures don't support this declaration.
704
parser_w_inlining_disabled=03124_W_Inlining disabled
705
% Inlining of procedures is disabled.
706
parser_i_writing_browser_log=03125_I_Writing Browser log $1
707
% When information messages are on, the compiler warns you when it
708
% writes the browser log (generated with the \var{\{\$Y+ \}} switch).
709
parser_h_maybe_deref_caret_missing=03126_H_may be pointer dereference is missing
710
% The compiler thinks that a pointer may need a dereference.
711
parser_f_assembler_reader_not_supported=03127_F_Selected assembler reader not supported
712
% The selected assembler reader (with \var{\{\$ASMMODE xxx\}} is not
713
% supported. The compiler can be compiled with or without support for a
714
% particular assembler reader.
715
parser_e_proc_dir_conflict=03128_E_Procedure directive "$1" has conflicts with other directives
716
% You specified a procedure directive that conflicts with other directives.
717
% for instance \var{cdecl} and \var{pascal} are mutually exclusive.
718
parser_e_call_convention_dont_match_forward=03129_E_Calling convention doesn't match forward
719
% This error happens when you declare a function or procedure with
720
% e.g. \var{cdecl;} but omit this directive in the implementation, or vice
721
% versa. The calling convention is part of the function declaration, and
722
% must be repeated in the function definition.
723
parser_e_property_cant_have_a_default_value=03131_E_Property can't have a default value
724
% Set properties or indexed properties cannot have a default value.
725
parser_e_property_default_value_must_const=03132_E_The default value of a property must be constant
726
% The value of a \var{default} declared property must be known at compile
727
% time. The value you specified is only known at run time. This happens
728
% .e.g. if you specify a variable name as a default value.
729
parser_e_cant_publish_that=03133_E_Symbol can't be published, can be only a class
730
% Only class type variables can be in a \var{published} section of a class
731
% if they are not declared as a property.
732
parser_e_cant_publish_that_property=03134_E_That kind of property can't be published
733
% Properties in a \var{published} section cannot be array properties.
734
% they must be moved to public sections. Properties in a \var{published}
735
% section must be an ordinal type, a real type, strings or sets.
736
parser_e_empty_import_name=03136_W_An import name is required
737
% Some targets need a name for the imported procedure or a \var{cdecl} specifier
738
parser_e_division_by_zero=03138_E_Division by zero
739
% There is a divsion by zero encounted
740
parser_e_invalid_float_operation=03139_E_Invalid floating point operation
741
% An operation on two real type values produced an overflow or a division
743
parser_e_array_lower_less_than_upper_bound=03140_E_Upper bound of range is less than lower bound
744
% The upper bound of a an array declaration is less than the lower bound and this
746
parser_w_string_too_long=03141_W_string "$1" is longer than "$2"
747
% The size of the constant string is larger than the size you specified in
748
% string type definition
749
parser_e_string_larger_array=03142_E_string length is larger than array of char length
750
% The size of the constant string is larger than the size you specified in
751
% the array[x..y] of char definition
752
parser_e_ill_msg_expr=03143_E_Illegal expression after message directive
753
% \fpc supports only integer or string values as message constants
754
parser_e_ill_msg_param=03144_E_Message handlers can take only one call by ref. parameter
755
% A method declared with the \var{message}-directive as message handler
756
% can take only one parameter which must be declared as call by reference
757
% Parameters are declared as call by reference using the \var{var}-directive
758
parser_e_duplicate_message_label=03145_E_Duplicate message label: "$1"
759
% A label for a message is used twice in one object/class
760
parser_e_self_in_non_message_handler=03146_E_Self can only be an explicit parameter in methods which are message handlers
761
% The self parameter can only be passed explicitly to a method which
762
% is declared as message handler.
763
parser_e_threadvars_only_sg=03147_E_Threadvars can be only static or global
764
% Threadvars must be static or global, you can't declare a thread
765
% local to a procedure. Local variables are always local to a thread,
766
% because every thread has it's own stack and local variables
767
% are stored on the stack
768
parser_f_direct_assembler_not_allowed=03148_F_Direct assembler not supported for binary output format
769
% You can't use direct assembler when using a binary writer, choose an
770
% other outputformat or use an other assembler reader
771
parser_w_no_objpas_use_mode=03149_W_Don't load OBJPAS unit manually, use {$mode objfpc} or {$mode delphi} instead
772
% You are trying to load the ObjPas unit manually from a uses clause. This is
773
% not a good idea. Use the \var{\{\$mode objfpc\}} or
774
% \var{\{\$mode delphi\}}
775
% directives which load the unit automatically
776
parser_e_no_object_override=03150_E_OVERRIDE can't be used in objects
777
% Override is not supported for objects, use \var{virtual} instead to override
778
% a method of a parent object
779
parser_e_cant_use_inittable_here=03151_E_Data types which require initialization/finalization can't be used in variant records
780
% Some data type (e.g. \var{ansistring}) needs initialization/finalization
781
% code which is implicitly generated by the compiler. Such data types
782
% can't be used in the variant part of a record.
783
parser_e_resourcestring_only_sg=03152_E_Resourcestrings can be only static or global
784
% Resourcestring can not be declared local, only global or using the static
786
parser_e_exit_with_argument_not__possible=03153_E_Exit with argument can't be used here
787
% an exit statement with an argument for the return value can't be used here, this
788
% can happen e.g. in \var{try..except} or \var{try..finally} blocks
789
parser_e_stored_property_must_be_boolean=03154_E_The type of the storage symbol must be boolean
790
% If you specify a storage symbol in a property declaration, it must be of
792
parser_e_ill_property_storage_sym=03155_E_This symbol isn't allowed as storage symbol
793
% You can't use this type of symbol as storage specifier in property
794
% declaration. You can use only methods with the result type boolean,
795
% boolean class fields or boolean constants
796
parser_e_only_publishable_classes_can__be_published=03156_E_Only class which are compiled in $M+ mode can be published
797
% In the published section of a class can be only class as fields used which
798
% are compiled in \var{\{\$M+\}} or which are derived from such a class. Normally
799
% such a class should be derived from TPersitent
800
parser_e_proc_directive_expected=03157_E_Procedure directive expected
801
% When declaring a procedure in a const block you used a ; after the
802
% procedure declaration after which a procedure directive must follow.
803
% Correct declarations are:
806
% p : procedure;stdcall=nil;
807
% p : procedure stdcall=nil;
809
parser_e_invalid_property_index_value=03158_E_The value for a property index must be of an ordinal type
810
% The value you use to index a property must be of an ordinal type, for
811
% example an integer or enumerated type.
812
parser_e_procname_to_short_for_export=03159_E_Procedure name to short to be exported
813
% The length of the procedure/function name must be at least 2 characters
814
% long. This is because of a bug in dlltool which doesn't parse the .def
815
% file correct with a name of length 1.
816
parser_e_dlltool_unit_var_problem=03160_E_No DEFFILE entry can be generated for unit global vars
817
parser_e_dlltool_unit_var_problem2=03161_E_Compile without -WD option
818
% You need to compile this file without the -WD switch on the
820
parser_f_need_objfpc_or_delphi_mode=03162_F_You need ObjFpc (-S2) or Delphi (-Sd) mode to compile this module
821
% You need to use {$mode objfpc} or {$mode delphi} to compile this file.
822
% Or use the equivalent commandline switches -S2 or -Sd.
823
parser_e_no_export_with_index_for_target=03163_E_Can't export with index under $1
824
% Exporting of functions or procedures with a specified index is not
825
% supported on this target.
826
parser_e_no_export_of_variables_for_target=03164_E_Exporting of variables is not supported under $1
827
% Exporting of variables is not supported on this target.
828
parser_e_improper_guid_syntax=03165_E_Improper GUID syntax
829
parser_w_interface_mapping_notfound=03168_W_Procedure named "$1" not found that is suitable for implementing the $2.$3
830
parser_e_interface_id_expected=03169_E_interface identifier expected
831
% This happens when the compiler scans a \var{class} declaration that contains
832
% \var{interface} function name mapping code like this:
835
% TMyObject = class(TObject, IDispatch)
836
% function IUnknown.QueryInterface=MyQueryInterface;
839
% and the \var{interface} before the dot not listed in the inheritance list.
840
parser_e_type_cant_be_used_in_array_index=03170_E_Type "$1" can't be used as array index type
841
% Types like \var{qword} or \var{int64} aren't allowed as array index type
842
parser_e_no_con_des_in_interfaces=03171_E_Con- and destructors aren't allowed in interfaces
843
% Constructor and destructor declarations aren't allowed in interface
844
% In the most cases the method \var{QueryInterface} of \var{IUnknown} can
845
% be used to create a new interface.
846
parser_e_no_access_specifier_in_interfaces=03172_E_Access specifiers can't be used in INTERFACES
847
% The access specifiers \var{public}, \var{private}, \var{protected} and
848
% \var{pusblished} can't be used in interfaces because all methods
849
% of an interfaces must be public.
850
parser_e_no_vars_in_interfaces=03173_E_An interface can't contain fields
851
% Declarations of fields aren't allowed in interfaces. An interface
852
% can contain only methods
853
parser_e_no_local_external=03174_E_Can't declare local procedure as EXTERNAL
854
% Declaring local procedures as external is not possible. Local procedures
855
% get hidden parameters that will make the chance of errors very high
856
parser_w_skipped_fields_before=03175_W_Some fields coming before "$1" weren't initialized
857
% In Delphi mode, not all fields of a typed constant record have to be
858
% initialized, but the compiler warns you when it detects such situations.
859
parser_e_skipped_fields_before=03176_E_Some fields coming before "$1" weren't initialized
860
% In all syntax modes but Delphi mode, you can't leave some fields uninitialized
861
% in the middle of a typed constant record
862
parser_w_skipped_fields_after=03177_W_Some fields coming after "$1" weren't initialized
863
% You can leave some fields at the end of a type constant record uninitialized
864
% (the compiler will initialize them to zero automatically). This may be the cause
865
% of subtle problems.
866
parser_e_varargs_need_cdecl_and_external=03178_E_VarArgs directive without CDecl and External
867
% The varargs directive can only be used with procedures or functions
868
% that are declared with \var{cdecl} and \var{external} directives. The varargs directive
869
% is only meant to provide a compatible interface to C functions like printf.
870
parser_e_self_call_by_value=03179_E_Self must be a normal (call-by-value) parameter
871
% You can't declare self as a const or var parameter, it must always be
872
% a call-by-value parameter
873
parser_e_interface_has_no_guid=03180_E_Interface "$1" has no interface identification
874
% When you want to assign an interface to a constant, then the interface
875
% must have a GUID value set.
876
parser_e_illegal_field_or_method=03181_E_Unknown class field or method identifier "$1"
877
% Properties must refer to a field or method in the same class.
878
parser_w_proc_overriding_calling=03182_W_Overriding calling convention "$1" with "$2"
879
% There are two directives in the procedure declaration that specify a calling
880
% convention. Only the last directive will be used
881
parser_e_no_procvarobj_const=03183_E_Typed constants of the type "procedure of object" can only be initialized with NIL
882
% You can't assign the address of a method to a typed constant which has a
883
% 'procedure of object' type, because such a constant requires two addresses:
884
% that of the method (which is known at compile time) and that of the object or
885
% class instance it operates on (which can not be known at compile time).
886
parser_e_default_value_only_one_para=03184_E_Default value can only be assigned to one parameter
887
parser_e_default_value_expected_for_para=03185_E_Default parameter required for "$1"
888
parser_w_unsupported_feature=03186_W_Use of unsupported feature!
889
% You're trying to force the compiler into doing something it cannot do yet.
890
parser_h_c_arrays_are_references=03187_H_C arrays are passed by reference
891
% Any array passed to a C functions is passed
892
% by a pointer (i.e. by reference).
893
parser_e_C_array_of_const_must_be_last=03188_E_C array of const must be the last argument
894
% You can not add any other argument after an \var{array of const} for
895
% \var{cdecl} functions, as the size pushed on stack for this argument is
897
parser_h_type_redef=03189_H_Type "$1" redefinition
898
% This is an indicator that a previously declared type is
899
% being redefined as something else. This may, or may not
900
% be, a cause for errors.
901
parser_w_cdecl_has_no_high=03190_W_cdecl'ared functions have no high parameter
902
% Functions declared with cdecl modifier do not pass an extra implicit parameter.
903
parser_w_cdecl_no_openstring=03191_W_cdecl'ared functions do not support open strings
904
% Openstring is not supported for cdecl'ared functions.
905
parser_e_initialized_not_for_threadvar=03192_E_Cannot initialize variables declared as threadvar
906
% Variables declared as threadvar can not be initialized with a default value.
907
% The variables will always be filled with zero at the start of a new thread.
908
parser_e_msg_only_for_classes=03193_E_Message directive is only allowed in Classes
909
% The message directive is only supported for Class types.
910
parser_e_procedure_or_function_expected=03194_E_Procedure or Function expected
911
% A class method can only be specified for procedures and functions.
912
parser_e_illegal_calling_convention=03195_W_Calling convention directive ignored: "$1"
913
% Some calling conventions are supported only by certain CPUs. I.e. most non-i386 ports support
914
% only the standard ABI calling convention of the CPU.
915
parser_e_no_object_reintroduce=03196_E_REINTRODUCE can't be used in objects
916
% \var{reintroduce} is not supported for objects.
917
parser_e_paraloc_only_one_para=03197_E_Each argument must have it's own location
918
% If locations for arguments are specified explicitly as it is required by
919
% some syscall conventions, each argument must have it's only location, things
920
% like \var{procedure p(i,j : longint 'r1');} aren't allowed
921
parser_e_paraloc_all_paras=03198_E_Each argument must have an explicit location
922
% If one argument has an explicit argument location, all arguments of a procedure
924
parser_e_illegal_explicit_paraloc=03199_E_Unknown argument location
925
% The location specified for an argument isn't recognized by the compiler
926
parser_e_32bitint_or_pointer_variable_expected=03200_E_32 Bit Integer or Pointer Variable expected
927
% The libbase for MorphOS/AmigaOS can be give only as \var{longint}, \var{dword} or \var{pointer}.
928
parser_e_goto_outside_proc=03201_E_Goto statements aren't allowed between different procedures
929
% It isn't allowed to use the \var{goto} statements referencing labels outside the
930
% current procedure. The following example shows the problem:
939
% goto l1; // This goto ISN'T allowed
953
# 04049 is the last used one
955
% \section{Type checking errors}
956
% This section lists all errors that can occur when type checking is
958
% \begin{description}
959
type_e_mismatch=04000_E_Type mismatch
960
% This can happen in many cases:
962
% \item The variable you're assigning to is of a different type than the
963
% expression in the assignment.
964
% \item You are calling a function or procedure with parameters that are
965
% incompatible with the parameters in the function or procedure definition.
967
type_e_incompatible_types=04001_E_Incompatible types: got "$1" expected "$2"
968
% There is no conversion possible between the two types
969
% Another possiblity is that they are declared in different
973
% A1 : Array[1..10] Of Integer;
974
% A2 : Array[1..10] Of Integer;
977
% A1:=A2; { This statement gives also this error, it
978
% is due the strict type checking of pascal }
981
type_e_not_equal_types=04002_E_Type mismatch between "$1" and "$2"
982
% The types are not equal
983
type_e_type_id_expected=04003_E_Type identifier expected
984
% The identifier is not a type, or you forgot to supply a type identifier.
985
type_e_variable_id_expected=04004_E_Variable identifier expected
986
% This happens when you pass a constant to a routine (such as \var{Inc} var or \var{Dec})
987
% when it expects a variable. You can only pass variables as arguments to these functions.
988
type_e_integer_expr_expected=04005_E_Integer expression expected, but got "$1"
989
% The compiler expects an expression of type integer, but gets a different
991
type_e_boolean_expr_expected=04006_E_Boolean expression expected, but got "$1"
992
% The expression must be a boolean type, it should be return true or
994
type_e_ordinal_expr_expected=04007_E_Ordinal expression expected
995
% The expression must be of ordinal type, i.e., maximum a \var{Longint}.
996
% This happens, for instance, when you specify a second argument
997
% to \var{Inc} or \var{Dec} that doesn't evaluate to an ordinal value.
998
type_e_pointer_type_expected=04008_E_pointer type expected, but got "$1"
999
% The variable or expression isn't of the type \var{pointer}. This
1000
% happens when you pass a variable that isn't a pointer to \var{New}
1002
type_e_class_type_expected=04009_E_class type expected, but got "$1"
1003
% The variable of expression isn't of the type \var{class}. This happens
1006
% \item The parent class in a class declaration isn't a class.
1007
% \item An exception handler (\var{On}) contains a type identifier that
1010
type_e_cant_eval_constant_expr=04011_E_Can't evaluate constant expression
1011
% This error can occur when the bounds of an array you declared does
1012
% not evaluate to ordinal constants
1013
type_e_set_element_are_not_comp=04012_E_Set elements are not compatible
1014
% You are trying to make an operation on two sets, when the set element types
1015
% are not the same. The base type of a set must be the same when taking the
1017
type_e_set_operation_unknown=04013_E_Operation not implemented for sets
1018
% several binary operations are not defined for sets
1019
% like div mod ** (also >= <= for now)
1020
type_w_convert_real_2_comp=04014_W_Automatic type conversion from floating type to COMP which is an integer type
1021
% An implicit type conversion from a real type to a \var{comp} is
1022
% encountered. Since \var{comp} is a 64 bit integer type, this may indicate
1024
type_h_use_div_for_int=04015_H_use DIV instead to get an integer result
1025
% When hints are on, then an integer division with the '/' operator will
1026
% procuce this message, because the result will then be of type real
1027
type_e_strict_var_string_violation=04016_E_string types doesn't match, because of $V+ mode
1028
% When compiling in \var{\{\$V+\}} mode, the string you pass as a parameter
1029
% should be of the exact same type as the declared parameter of the procedure.
1030
type_e_succ_and_pred_enums_with_assign_not_possible=04017_E_succ or pred on enums with assignments not possible
1031
% When you declared an enumeration type which has assignments in it, as in C,
1032
% like in the following:
1034
% Tenum = (a,b,e:=5);
1036
% you cannot use the \var{Succ} or \var{Pred} functions on them.
1037
type_e_cant_read_write_type=04018_E_Can't read or write variables of this type
1038
% You are trying to \var{read} or \var{write} a variable from or to a
1039
% file of type text, which doesn't support that. Only integer types,
1040
% reals, pchars and strings can be read from/written to a text file.
1041
% Booleans can only be written to text files.
1042
type_e_no_readln_writeln_for_typed_file=04019_E_Can't use readln or writeln on typed file
1043
% \var{readln} and \var{writeln} are only allowed for text files.
1044
type_e_no_read_write_for_untyped_file=04020_E_Can't use read or write on untyped file.
1045
% \var{read} and \var{write} are only allowed for text or typed files.
1046
type_e_typeconflict_in_set=04021_E_Type conflict between set elements
1047
% There is at least one set element which is of the wrong type, i.e. not of
1049
type_w_maybe_wrong_hi_lo=04022_W_lo/hi(dword/qword) returns the upper/lower word/dword
1050
% \fpc supports an overloaded version of \var{lo/hi} for \var{longint/dword/int64/qword}
1051
% which returns the lower/upper word/dword of the argument. TP always uses
1052
% a 16 bit \var{lo/hi} which returns always bits 0..7 for \var{lo} and the
1053
% bits 8..15 for \var{hi}. If you want the TP behavior you have
1054
% to type cast the argument to \var{word/integer}
1055
type_e_integer_or_real_expr_expected=04023_E_Integer or real expression expected
1056
% The first argument to \var{str} must a real or integer type.
1057
type_e_wrong_type_in_array_constructor=04024_E_Wrong type "$1" in array constructor
1058
% You are trying to use a type in an array constructor which is not
1060
type_e_wrong_parameter_type=04025_E_Incompatible type for arg no. $1: Got "$2", expected "$3"
1061
% You are trying to pass an invalid type for the specified parameter.
1062
type_e_no_method_and_procedure_not_compatible=04026_E_Method (variable) and Procedure (variable) are not compatible
1063
% You can't assign a method to a procedure variable or a procedure to a
1065
type_e_wrong_math_argument=04027_E_Illegal constant passed to internal math function
1066
% The constant argument passed to a ln or sqrt function is out of
1067
% the definition range of these functions.
1068
type_e_no_addr_of_constant=04028_E_Can't get the address of constants
1069
% It is not possible to get the address of a constant, because they
1070
% aren't stored in memory, you can try making it a typed constant.
1071
type_e_argument_cant_be_assigned=04029_E_Argument can't be assigned to
1072
% Only expressions which can be on the left side of an
1073
% assignment can be passed as call by reference argument
1074
% Remark: Properties can be only
1075
% used on the left side of an assignment, but they cannot be used as arguments
1076
type_e_cannot_local_proc_to_procvar=04030_E_Can't assign local procedure/function to procedure variable
1077
% It's not allowed to assign a local procedure/function to a
1078
% procedure variable, because the calling of local procedure/function is
1079
% different. You can only assign local procedure/function to a void pointer.
1080
type_e_no_assign_to_addr=04031_E_Can't assign values to an address
1081
% It is not allowed to assign a value to an address of a variable,constant,
1082
% procedure or function. You can try compiling with -So if the identifier
1083
% is a procedure variable.
1084
type_e_no_assign_to_const=04032_E_Can't assign values to const variable
1085
% It's not allowed to assign a value to a variable which is declared
1086
% as a const. This is normally a parameter declared as const, to allow
1087
% changing the value make the parameter as a value parameter or a var.
1088
type_e_array_required=04033_E_Array type required
1089
% If you are accessing a variable using an index '[<x>]' then
1090
% the type must be an array. In FPC mode also a pointer is allowed.
1091
type_e_interface_type_expected=04034_E_interface type expected, but got "$1"
1092
type_w_mixed_signed_unsigned=04035_W_Mixing signed expressions and longwords gives a 64bit result
1093
% If you divide (or calculate the modulus of) a signed expression by a longword (or vice versa),
1094
% or if you have overflow and/or range checking turned on and use an arithmetic
1095
% expression (+, -, *, div, mod) in which both signed numbers and longwords appear,
1096
% then everything has to be evaluated in 64bit which is slower than normal
1097
% 32bit arithmetic. You can avoid this by typecasting one operand so it
1098
% matches the resulttype of the other one.
1099
type_w_mixed_signed_unsigned2=04036_W_Mixing signed expressions and cardinals here may cause a range check error
1100
% If you use a binary operator (and, or, xor) and one of
1101
% the operands is a longword while the other one is a signed expression, then,
1102
% if range checking is turned on, you may get a range check error because in
1103
% such a case both operands are converted to longword before the operation is
1104
% carried out. You can avoid this by typecasting one operand so it
1105
% matches the resulttype of the other one.
1106
type_e_typecast_wrong_size_for_assignment=04037_E_Typecast has different size ($1 -> $2) in assignment
1107
% Type casting to a type with a different size is not allowed when the variable is
1108
% used for assigning.
1109
type_e_array_index_enums_with_assign_not_possible=04038_E_enums with assignments can't be used as array index
1110
% When you declared an enumeration type which has assignments in it, as in C,
1111
% like in the following:
1113
% Tenum = (a,b,e:=5);
1115
% you cannot use it as index of an array.
1116
type_e_classes_not_related=04039_E_Class or Object types "$1" and "$2" are not related
1117
% There is a typecast from one class or object to another while the class/object
1118
% are not related. This will probably lead to errors
1119
type_w_classes_not_related=04040_W_Class types "$1" and "$2" are not related
1120
% There is a typecast from one class or object to another while the class/object
1121
% are not related. This will probably lead to errors
1122
type_e_class_or_interface_type_expected=04041_E_Class or interface type expected, but got "$1"
1123
type_e_type_is_not_completly_defined=04042_E_Type "$1" is not completely defined
1124
type_w_string_too_long=04043_W_String literal has more characters than short string length
1125
% The size of the constant string, which is assigned to a shortstring,
1126
% is longer than the maximum size of the shortstring
1127
type_w_signed_unsigned_always_false=04044_W_Comparison is always false due to range of values
1128
% There is a comparison between an unsigned value and a signed constant which is
1129
% less than zero. Because of type promotion, the statement will always evaluate to
1130
% false. Exlicitly typecast the constant to the correct range to avoid this problem.
1131
type_w_signed_unsigned_always_true=04045_W_Comparison is always true due to range of values
1132
% There is a comparison between an unsigned value and a signed constant which is
1133
% less than zero. Because of type promotion, the statement will always evaluate to
1134
% true. Exlicitly typecast the constant to the correct range to avoid this problem.
1135
type_w_instance_with_abstract=04046_W_Constructing a class "$1" with abstract methods
1136
% An instance of a class is created which contains non-implemented abstract
1137
% methods. This will probably lead to a runtime error 211 in the code if that
1138
% routine is ever called. All abstract methods should be overriden.
1139
type_h_in_range_check=04047_H_The left operand of the IN operator should be byte sized
1140
% The left operand of the \var{in} operator is not an ordinal or enumeration which fits
1141
% within 8-bits, this may lead to range check errors. The \var{in} operator
1142
% currently only supports a left operand which fits within a byte. In the case of
1143
% enumerations, the size of an element of an enumeration can be controlled with
1144
% the \var{\{\$PACKENUM\}} or \var{\{\$Zn\}} switches.
1145
type_w_smaller_possible_range_check=04048_W_Type size mismatch, possible loss of data / range check error
1146
% There is an assignment to a smaller type than the source type. This means that
1147
% this may cause a range-check error, or may lead to possible loss of data.
1148
type_h_smaller_possible_range_check=04049_H_Type size mismatch, possible loss of data / range check error
1149
% There is an assignment to a smaller type than the source type. This means that
1150
% this may cause a range-check error, or may lead to possible loss of data.
1151
type_e_cant_take_address_of_abstract_method=04050_E_The address of an abstract method can't be taken
1152
% An abstract method has no body, so the address of an abstract method can't be taken.
1153
type_e_operator_not_allowed=04051_E_The operator is not applicable for the operand type
1154
% You are trying an operator that is not available for the type of the
1156
type_e_constant_expr_expected=04052_E_Constant Expression expected
1157
% The compiler expects an constant expression, but gets a variable expression.
1158
type_e_operator_not_supported_for_types=04053_E_Operation "$1" not supported types "$2" and "$3"
1159
% The operation is not allowed for the supplied types
1164
# 05055 is the last used one
1166
% \section{Symbol handling}
1167
% This section lists all the messages that concern the handling of symbols.
1168
% This means all things that have to do with procedure and variable names.
1169
% \begin{description}
1170
sym_e_id_not_found=05000_E_Identifier not found "$1"
1171
% The compiler doesn't know this symbol. Usually happens when you misspel
1172
% the name of a variable or procedure, or when you forgot to declare a
1174
sym_f_internal_error_in_symtablestack=05001_F_Internal Error in SymTableStack()
1175
% An internal error occurred in the compiler; If you encounter such an error,
1176
% please contact the developers and try to provide an exact description of
1177
% the circumstances in which the error occurs.
1178
sym_e_duplicate_id=05002_E_Duplicate identifier "$1"
1179
% The identifier was already declared in the current scope.
1180
sym_h_duplicate_id_where=05003_H_Identifier already defined in $1 at line $2
1181
% The identifier was already declared in a previous scope.
1182
sym_e_unknown_id=05004_E_Unknown identifier "$1"
1183
% The identifier encountered has not been declared, or is used outside the
1184
% scope where it is defined.
1185
sym_e_forward_not_resolved=05005_E_Forward declaration not solved "$1"
1186
% This can happen in two cases:
1188
% \item This happens when you declare a function (in the \var{interface} part, or
1189
% with a \var{forward} directive, but do not implement it.
1190
% \item You reference a type which isn't declared in the current \var{type}
1193
sym_e_error_in_type_def=05007_E_Error in type definition
1194
% There is an error in your definition of a new array type:
1195
% \item One of the range delimiters in an array declaration is erroneous.
1196
% For example, \var{Array [1..1.25]} will trigger this error.
1197
sym_e_forward_type_not_resolved=05009_E_Forward type not resolved "$1"
1198
% A symbol was forward defined, but no declaration was encountered.
1199
sym_e_only_static_in_static=05010_E_Only static variables can be used in static methods or outside methods
1200
% A static method of an object can only access static variables.
1201
sym_f_type_must_be_rec_or_class=05012_F_record or class type expected
1202
% The variable or expression isn't of the type \var{record} or \var{class}.
1203
sym_e_no_instance_of_abstract_object=05013_E_Instances of classes or objects with an abstract method are not allowed
1204
% You are trying to generate an instance of a class which has an abstract
1205
% method that wasn't overridden.
1206
sym_w_label_not_defined=05014_W_Label not defined "$1"
1207
% A label was declared, but not defined.
1208
sym_e_label_used_and_not_defined=05015_E_Label used but not defined "$1"
1209
% A label was declared and used, but not defined.
1210
sym_e_ill_label_decl=05016_E_Illegal label declaration
1211
% This error should never happen; it occurs if a label is defined outside a
1212
% procedure or function.
1213
sym_e_goto_and_label_not_supported=05017_E_GOTO and LABEL are not supported (use switch -Sg)
1214
% You must compile a program which has \var{label}s and \var{goto} statements
1215
% with the \var{-Sg} switch. By default, \var{label} and \var{goto} aren't
1217
sym_e_label_not_found=05018_E_Label not found
1218
% A \var{goto label} was encountered, but the label isn't declared.
1219
sym_e_id_is_no_label_id=05019_E_identifier isn't a label
1220
% The identifier specified after the \var{goto} isn't of type label.
1221
sym_e_label_already_defined=05020_E_label already defined
1222
% You are defining a label twice. You can define a label only once.
1223
sym_e_ill_type_decl_set=05021_E_illegal type declaration of set elements
1224
% The declaration of a set contains an invalid type definition.
1225
sym_e_class_forward_not_resolved=05022_E_Forward class definition not resolved "$1"
1226
% You declared a class, but you did not implement it.
1227
sym_n_unit_not_used=05023_H_Unit "$1" not used in $2
1228
% The unit referenced in the \var{uses} clause is not used.
1229
sym_h_para_identifier_not_used=05024_H_Parameter "$1" not used
1230
% The identifier was declared (locally or globally) but
1231
% was not used (locally or globally).
1232
sym_n_local_identifier_not_used=05025_N_Local variable "$1" not used
1233
% You have declared, but not used a variable in a procedure or function
1235
sym_h_para_identifier_only_set=05026_H_Value parameter "$1" is assigned but never used
1236
% The identifier was declared (locally or globally)
1237
% set but not used (locally or globally).
1238
sym_n_local_identifier_only_set=05027_N_Local variable "$1" is assigned but never used
1239
% The variable in a procedure or function
1240
% implementation is declared, set but never used.
1241
sym_h_local_symbol_not_used=05028_H_Local $1 "$2" is not used
1242
% A local symbol is never used.
1243
sym_n_private_identifier_not_used=05029_N_Private field "$1.$2" is never used
1244
sym_n_private_identifier_only_set=05030_N_Private field "$1.$2" is assigned but never used
1245
sym_n_private_method_not_used=05031_N_Private method "$1.$2" never used
1246
sym_e_set_expected=05032_E_Set type expected
1247
% The variable or expression is not of type \var{set}. This happens in an
1248
% \var{in} statement.
1249
sym_w_function_result_not_set=05033_W_Function result does not seem to be set
1250
% You can get this warning if the compiler thinks that a function return
1251
% value is not set. This will not be displayed for assembler procedures,
1252
% or procedures that contain assembler blocks.
1253
sym_w_wrong_C_pack=05034_W_Type "$1" is not aligned correctly in current record for C
1254
% Arrays with sizes not multiples of 4 will be wrongly aligned
1256
sym_e_illegal_field=05035_E_Unknown record field identifier "$1"
1257
% The field doesn't exist in the record/object definition.
1258
sym_n_uninitialized_local_variable=05036_W_Local variable "$1" does not seem to be initialized
1259
% This message is displayed if the compiler thinks that a variable will
1260
% be used (i.e. appears in the right-hand-side of an expression) when it
1261
% was not initialized first (i.e. appeared in the left-hand side of an
1263
sym_n_uninitialized_variable=05037_W_Variable "$1" does not seem to be initialized
1264
% This message is displayed if the compiler thinks that a variable will
1265
% be used (i.e. appears in the right-hand-side of an expression) when it
1266
% was not initialized first (i.e. appeared in the left-hand side of an
1268
sym_e_id_no_member=05038_E_identifier idents no member "$1"
1269
% This error is generated when an identifier of a record,
1270
% field, or method is accessed while it is not defined.
1271
sym_h_param_list=05039_H_Found declaration: $1
1272
% You get this when you use the \var{-vh} switch. In case an overloaded
1273
% procedure is not found, then all candidate overloaded procedures are
1274
% listed, with their parameter lists.
1275
sym_e_segment_too_large=05040_E_Data element too large
1276
% You get this when you declare a data element whose size exceeds the
1277
% prescribed limit (2 Gb on 80386+/68020+ processors)
1278
sym_e_no_matching_implementation_found=05042_E_No matching implementation for interface method "$1" found
1279
% There was no matching method found which could implement the interface
1280
% method. Check argument types and result type of the methods.
1281
sym_w_deprecated_symbol=05043_W_Symbol "$1" is deprecated
1282
% This means that a symbol (a variable, routine, etc...) which is
1283
% declared as \var{deprecated} is used. Deprecated symbols may no longer
1284
% be available in newer versions of the unit / library. Usage of this symbol
1285
% should be avoided as much as possible.
1286
sym_w_non_portable_symbol=05044_W_Symbol "$1" is not portable
1287
% This means that a symbol (a variable, routine, etc...) which is
1288
% declared as \var{platform} is used. This symbol's value, usage
1289
% and availability is platform specific and should not be used
1290
% if the source code must be portable.
1291
sym_w_non_implemented_symbol=05055_W_Symbol "$1" is not implemented
1292
% This means that a symbol (a variable, routine, etc...) which is
1293
% declared as \var{unimplemented} is used. This symbol is defined,
1294
% but is not yet implemented on this specific platform.
1295
sym_e_cant_create_unique_type=05056_E_Can't create unique type from this type
1296
% Only simple types like ordinal, float and string types are supported when
1297
% redefining a type with \var{type newtype = type oldtype;}.
1302
# 06040 is the last used one
1304
% \section{Code generator messages}
1305
% This section lists all messages that can be displayed if the code
1306
% generator encounters an error condition.
1307
% \begin{description}
1308
cg_e_break_not_allowed=06000_E_BREAK not allowed
1309
% You're trying to use \var{break} outside a loop construction.
1310
cg_e_continue_not_allowed=06001_E_CONTINUE not allowed
1311
% You're trying to use \var{continue} outside a loop construction.
1312
cg_e_too_complex_expr=06002_E_Expression too complicated - FPU stack overflow
1313
% Your expression is too long for the compiler. You should try dividing the
1314
% construct over multiple assignments.
1315
cg_e_illegal_expression=06003_E_Illegal expression
1316
% This can occur under many circumstances. Mostly when trying to evaluate
1317
% constant expressions.
1318
cg_e_invalid_integer=06004_E_Invalid integer expression
1319
% You made an expression which isn't an integer, and the compiler expects the
1320
% result to be an integer.
1321
cg_e_invalid_qualifier=06005_E_Illegal qualifier
1322
% One of the following is happening :
1324
% \item You're trying to access a field of a variable that is not a record.
1325
% \item You're indexing a variable that is not an array.
1326
% \item You're dereferencing a variable that is not a pointer.
1328
cg_e_upper_lower_than_lower=06006_E_High range limit < low range limit
1329
% You are declaring a subrange, and the lower limit is higher than the high
1330
% limit of the range.
1331
cg_e_illegal_count_var=06007_E_Illegal counter variable
1332
% The type of a \var{for} loop variable must be an ordinal type.
1333
% Loop variables cannot be reals or strings.
1334
cg_e_cant_choose_overload_function=06008_E_Can't determine which overloaded function to call
1335
% You're calling overloaded functions with a parameter that doesn't correspond
1336
% to any of the declared function parameter lists. e.g. when you have declared
1337
% a function with parameters \var{word} and \var{longint}, and then you call
1338
% it with a parameter which is of type \var{integer}.
1339
cg_e_parasize_too_big=06009_E_Parameter list size exceeds 65535 bytes
1340
% The I386 processor limits the parameter list to 65535 bytes (the \var{RET}
1341
% instruction causes this)
1342
cg_e_illegal_type_conversion=06010_E_Illegal type conversion: "$1" to "$2"
1343
% When doing a type-cast, you must take care that the sizes of the variable and
1344
% the destination type are the same.
1345
cg_h_pointer_to_longint_conv_not_portable=06011_H_Conversion between ordinals and pointers are not portable
1346
% If you typecast a pointer to a longint (or vice-versa), this code will not compile
1347
% on a machine using 64-bit for pointer storage.
1348
cg_e_file_must_call_by_reference=06012_E_File types must be var parameters
1349
% You cannot specify files as value parameters, i.e. they must always be
1350
% declared \var{var} parameters.
1351
cg_e_cant_use_far_pointer_there=06013_E_The use of a far pointer isn't allowed there
1352
% Free Pascal doesn't support far pointers, so you cannot take the address of
1353
% an expression which has a far reference as a result. The \var{mem} construct
1354
% has a far reference as a result, so the following code will produce this
1359
% p:=@mem[a000:000];
1361
cg_e_var_must_be_reference=06014_E_illegal call by reference parameters
1362
% You are trying to pass a constant or an expression to a procedure that
1363
% requires a \var{var} parameter. Only variables can be passed as a \var{var}
1365
cg_e_dont_call_exported_direct=06015_E_EXPORT declared functions can't be called
1367
cg_w_member_cd_call_from_method=06016_W_Possible illegal call of constructor or destructor
1368
% The compiler detected that a constructor or destructor is called within a
1369
% a method. This will probably lead to problems, since constructors / destructors
1370
% require parameters on entry.
1371
cg_n_inefficient_code=06017_N_Inefficient code
1372
% Your statement seems dubious to the compiler.
1373
cg_w_unreachable_code=06018_W_unreachable code
1374
% You specified a construct which will never be executed. Example:
1381
cg_e_cant_call_abstract_method=06020_E_Abstract methods can't be called directly
1382
% You cannot call an abstract method directy, instead you must call a
1383
% overriding child method, because an abstract method isn't implemented.
1384
cg_d_register_weight=06027_DL_Register $1 weight $2 $3
1385
% Debugging message. Shown when the compiler considers a variable for
1386
% keeping in the registers.
1387
cg_d_stackframe_omited=06029_DL_Stack frame is omitted
1388
% Some procedure/functions do not need a complete stack-frame, so it is omitted.
1389
% This message will be displayed when the {-vd} switch is used.
1390
cg_e_unable_inline_object_methods=06031_E_Object or class methods can't be inline.
1391
% You cannot have inlined object methods.
1392
cg_e_unable_inline_procvar=06032_E_Procvar calls cannot be inline.
1393
% A procedure with a procedural variable call cannot be inlined.
1394
cg_e_no_code_for_inline_stored=06033_E_No code for inline procedure stored
1395
% The compiler couldn't store code for the inline procedure.
1396
cg_e_can_access_element_zero=06035_E_Element zero of an ansi/wide- or longstring can't be accessed, use (set)length instead
1397
% You should use \var{setlength} to set the length of an ansi/wide/longstring
1398
% and \var{length} to get the length of such a string types
1399
cg_e_cannot_call_cons_dest_inside_with=06037_E_Constructors or destructors can not be called inside a 'with' clause
1400
% Inside a \var{with} clause you cannot call a constructor or destructor for the
1401
% object you have in the \var{with} clause.
1402
cg_e_cannot_call_message_direct=06038_E_Cannot call message handler methods directly
1403
% A message method handler method cannot be called directly if it contains an
1404
% explicit self argument
1405
cg_e_goto_inout_of_exception_block=06039_E_Jump in or outside of an exception block
1406
% It is not allowed to jump in or outside of an exception block like \var{try..finally..end;}:
1413
% if not(final) then
1414
% goto 1; // this line will cause an error
1421
cg_e_control_flow_outside_finally=06040_E_Control flow statements aren't allowed in a finally block
1422
% It isn't allowed to use the control flow statements \var{break},
1423
% \var{continue} and \var{exit}
1424
% inside a finally statement. The following example shows the problem:
1431
% exit; // This exit ISN'T allowed
1436
% If the procedure \var{p} raises an exception the finally block is
1437
% executed. If the execution reaches the exit, it's unclear what to do:
1438
% exiting the procedure or searching for another exception handler
1440
cg_w_parasize_too_big=06041_W_Parameters size exceeds limit for certain cpu's
1441
% This indicates that you are declaring more than 64K of parameters, which
1442
% might not be supported on other processor targets.
1443
cg_w_localsize_too_big=06042_W_Local variable size exceed limit for certain cpu's
1444
% This indicates that you are declaring more than 32K of lcoal variables, which
1445
% might not be supported on other processor targets.
1446
cg_e_localsize_too_big=06043_E_Local variables size exceeds supported limit
1447
% This indicates that you are declaring more than 32K of lcoal variables, which
1448
% is not supported by this processor.
1454
# 07097 is the last used one
1456
asmr_d_start_reading=07000_DL_Starting $1 styled assembler parsing
1457
% This informs you that an assembler block is being parsed
1458
asmr_d_finish_reading=07001_DL_Finished $1 styled assembler parsing
1459
% This informs you that an assembler block has finished.
1460
asmr_e_none_label_contain_at=07002_E_Non-label pattern contains @
1461
% A identifier which isn't a label can't contain a @.
1462
asmr_e_building_record_offset=07004_E_Error building record offset
1463
% There has an error occured while building the offset of a record/object
1464
% structure, this can happend when there is no field specified at all or
1465
% an unknown field identifier is used.
1466
asmr_e_offset_without_identifier=07005_E_OFFSET used without identifier
1467
% You can only use OFFSET with an identifier. Other syntaxes aren't
1469
asmr_e_type_without_identifier=07006_E_TYPE used without identifier
1470
% You can only use TYPE with an identifier. Other syntaxes aren't
1472
asmr_e_no_local_or_para_allowed=07007_E_Cannot use local variable or parameters here
1473
% You can't use a local variable or parameter here, mostly because the
1474
% addressing of locals and parameters is done using the frame pointer register so the
1475
% address can't be obtained directly.
1476
asmr_e_need_offset=07008_E_need to use OFFSET here
1477
% You need to use OFFSET <id> here to get the address of the identifier.
1478
asmr_e_need_dollar=07009_E_need to use $ here
1479
% You need to use $<id> here to get the address of the identifier.
1480
asmr_e_cant_have_multiple_relocatable_symbols=07010_E_Cannot use multiple relocatable symbols
1481
% You can't have more than one relocatable symbol (variable/typed constant)
1483
asmr_e_only_add_relocatable_symbol=07011_E_Relocatable symbol can only be added
1484
% Relocatable symbols (variable/typed constant) can't be used with other
1485
% operators. Only addition is allowed.
1486
asmr_e_invalid_constant_expression=07012_E_Invalid constant expression
1487
% There is an error in the constant expression.
1488
asmr_e_relocatable_symbol_not_allowed=07013_E_Relocatable symbol is not allowed
1489
% You can't use a relocatable symbol (variable/typed constant) here.
1490
asmr_e_invalid_reference_syntax=07014_E_Invalid reference syntax
1491
% There is an error in the reference.
1492
asmr_e_local_para_unreachable=07015_E_You can not reach $1 from that code
1493
% You can not read directly the value of local or para
1494
% of a higher level in assembler code (except for
1495
% local assembler code without parameter nor locals).
1496
asmr_e_local_label_not_allowed_as_ref=07016_E_Local symbols/labels aren't allowed as references
1497
% You can't use local symbols/labels as references
1498
asmr_e_wrong_base_index=07017_E_Invalid base and index register usage
1499
% There is an error with the base and index register, they are
1500
% probably incorrect
1501
asmr_w_possible_object_field_bug=07018_W_Possible error in object field handling
1502
% Fields of objects or classes can be reached directly in normal or objfpc
1503
% modes but TP and Delphi modes treat the field name as a simple offset.
1504
asmr_e_wrong_scale_factor=07019_E_Wrong scale factor specified
1505
% The scale factor given is wrong, only 1,2,4 and 8 are allowed
1506
asmr_e_multiple_index=07020_E_Multiple index register usage
1507
% You are trying to use more than one index register
1508
asmr_e_invalid_operand_type=07021_E_Invalid operand type
1509
% The operand type doesn't match with the opcode used
1510
asmr_e_invalid_string_as_opcode_operand=07022_E_Invalid string as opcode operand: $1
1511
% The string specified as operand is not correct with this opcode
1512
asmr_w_CODE_and_DATA_not_supported=07023_W_@CODE and @DATA not supported
1513
% @CODE and @DATA are unsupported and are ignored.
1514
asmr_e_null_label_ref_not_allowed=07024_E_Null label references are not allowed
1515
asmr_e_expr_zero_divide=07025_E_Divide by zero in asm evaluator
1516
% There is a division by zero in a constant expression
1517
asmr_e_expr_illegal=07026_E_Illegal expression
1518
% There is an illegal expression in a constant expression
1519
asmr_e_escape_seq_ignored=07027_E_escape sequence ignored: $1
1520
% There is a C-styled string, but the escape sequence in the string
1521
% is unknown, and is therefore ignored
1522
asmr_e_invalid_symbol_ref=07028_E_Invalid symbol reference
1523
asmr_w_fwait_emu_prob=07029_W_Fwait can cause emulation problems with emu387
1524
asmr_w_fadd_to_faddp=07030_W_$1 without operand translated into $1P
1525
asmr_w_enter_not_supported_by_linux=07031_W_ENTER instruction is not supported by Linux kernel
1526
% ENTER instruction can generate a stack page fault that is not
1527
% caught correctly by the i386 Linux page handler.
1528
asmr_w_calling_overload_func=07032_W_Calling an overload function in assembler
1529
% There is a call to an overloaded method in the assembler block,
1530
% this might be the sign there is a problem
1531
asmr_e_unsupported_symbol_type=07033_E_Unsupported symbol type for operand
1532
asmr_e_constant_out_of_bounds=07034_E_Constant value out of bounds
1533
asmr_e_error_converting_decimal=07035_E_Error converting decimal $1
1534
% A constant decimal value does not have the correct syntax
1535
asmr_e_error_converting_octal=07036_E_Error converting octal $1
1536
% A constant octal value does not have the correct syntax
1537
asmr_e_error_converting_binary=07037_E_Error converting binary $1
1538
% A constant binary value does not have the correct syntax
1539
asmr_e_error_converting_hexadecimal=07038_E_Error converting hexadecimal $1
1540
% A constant hexadecimal value does not have the correct syntax
1541
asmr_h_direct_global_to_mangled=07039_H_$1 translated to $2
1542
asmr_w_direct_global_is_overloaded_func=07040_W_$1 is associated to an overloaded function
1543
asmr_e_cannot_use_SELF_outside_a_method=07041_E_Cannot use SELF outside a method
1544
% There is a reference to the \var{self} symbol while it is not
1545
% allowed. \var{self} can only be referenced inside methods
1546
asmr_e_cannot_use_OLDEBP_outside_nested_procedure=07042_E_Cannot use OLDEBP outside a nested procedure
1547
% There is a reference to the \var{oldebp} symbol while it is not
1548
% allowed. \var{oldebp} can only be referenced inside nested routines
1549
asmr_e_void_function=07043_W_Procedures can't return any value in asm code
1550
% Trying to return a value while in a procedure. A procedure
1551
% does not have any return value
1552
asmr_e_SEG_not_supported=07044_E_SEG not supported
1553
asmr_e_size_suffix_and_dest_dont_match=07045_E_Size suffix and destination or source size do not match
1554
% The register size and the opcode size suffix don't match. This is
1555
% probably an error in the assembler statement
1556
asmr_w_size_suffix_and_dest_dont_match=07046_W_Size suffix and destination or source size do not match
1557
% The register size and the opcode size suffix don't match. This is
1558
% probably an error in the assembler statement
1559
asmr_e_syntax_error=07047_E_Assembler syntax error
1560
% There is an assembler syntax error
1561
asmr_e_invalid_opcode_and_operand=07048_E_Invalid combination of opcode and operands
1562
% The opcode cannot be used with this type of operand
1563
asmr_e_syn_operand=07049_E_Assembler syntax error in operand
1564
asmr_e_syn_constant=07050_E_Assembler syntax error in constant
1565
asmr_e_invalid_string_expression=07051_E_Invalid String expression
1566
asmr_w_const32bit_for_address=07052_W_constant with symbol $1 for address which is not on a pointer
1567
% A constant expression represents an address which does not fit
1568
% into a pointer. The address is probably incorrect
1569
asmr_e_unknown_opcode=07053_E_Unrecognized opcode $1
1570
% This opcode is not known
1571
asmr_e_invalid_or_missing_opcode=07054_E_Invalid or missing opcode
1572
asmr_e_invalid_prefix_and_opcode=07055_E_Invalid combination of prefix and opcode: $1
1573
asmr_e_invalid_override_and_opcode=07056_E_Invalid combination of override and opcode: $1
1574
asmr_e_too_many_operands=07057_E_Too many operands on line
1575
% There are too many operands for this opcode. Check your
1577
asmr_w_near_ignored=07058_W_NEAR ignored
1578
asmr_w_far_ignored=07059_W_FAR ignored
1579
asmr_e_dup_local_sym=07060_E_Duplicate local symbol $1
1580
asmr_e_unknown_local_sym=07061_E_Undefined local symbol $1
1581
asmr_e_unknown_label_identifier=07062_E_Unknown label identifier $1
1582
asmr_e_invalid_register=07063_E_Invalid register name
1583
% There is an unknown register name used as operand.
1584
asmr_e_invalid_fpu_register=07064_E_Invalid floating point register name
1585
% There is an unknown register name used as operand.
1586
asmr_w_modulo_not_supported=07066_W_Modulo not supported
1587
asmr_e_invalid_float_const=07067_E_Invalid floating point constant $1
1588
% The floating point constant declared in an assembler block is
1590
asmr_e_invalid_float_expr=07068_E_Invalid floating point expression
1591
% The floating point expression declared in an assembler block is
1593
asmr_e_wrong_sym_type=07069_E_Wrong symbol type
1594
asmr_e_cannot_index_relative_var=07070_E_Cannot index a local var or parameter with a register
1595
% Trying to index using a base register a symbol which is already relative
1596
% to a register. This is not possible, and will probably lead to crashes.
1597
asmr_e_invalid_seg_override=07071_E_Invalid segment override expression
1598
asmr_w_id_supposed_external=07072_W_Identifier $1 supposed external
1599
% There is a reference to an undefined symbol. This will not result
1600
% in an error, since the symbol might be external, but may cause
1601
% problems at link time if the symbol is not defined anywhere.
1602
asmr_e_string_not_allowed_as_const=07073_E_Strings not allowed as constants
1603
% Character strings are not allowed as constants.
1604
asmr_e_no_var_type_specified=07074_No type of variable specified
1605
% The syntax expects a type idenfitifer after the dot, but
1607
asmr_w_assembler_code_not_returned_to_text=07075_E_assembler code not returned to text section
1608
% There was a directive in the assembler block to change sections,
1609
% but there is a missing return to the text section at the end
1610
% of the assembler block. This might cause errors during link time.
1611
asmr_e_not_directive_or_local_symbol=07076_E_Not a directive or local symbol $1
1612
% This symbol is unknown.
1613
asmr_w_using_defined_as_local=07077_E_Using a defined name as a local label
1614
asmr_e_dollar_without_identifier=07078_E_Dollar token is used without an identifier
1615
% A constant expression has an identifier which does not start with
1617
asmr_w_32bit_const_for_address=07079_W_32bit constant created for address
1618
% A constant was used as an address. This is probably an error,
1619
% since using absolute addresses will probably not work.
1620
asmr_n_align_is_target_specific=07080_N_.align is target specific, use .balign or .p2align
1621
% Using the .align directive is platform specific, and its meaning will vary
1622
% from one platform to another.
1623
asmr_e_cannot_access_field_directly_for_parameters=07081_E_Can't access fields directly for parameters
1624
% You should load the parameter first into a register and then access the
1625
% fields using that register.
1626
asmr_e_cannot_access_object_field_directly=07082_E_Can't access fields of objects/classes directly
1627
% You should load the self pointer first into a register and then access the
1628
% fields using the register as base. By default the self pointer is available
1629
% in the esi register on i386.
1630
asmr_e_unable_to_determine_reference_size=07083_E_No size specified and unable to determine the size of the operands
1631
% You should specify explicitly a size for the reference, because
1632
% the compiler is unable to determine what size (byte,word,dword,etc.) it
1633
% should use for the reference.
1634
asmr_e_cannot_use_RESULT_here=07084_E_Cannot use RESULT in this function
1635
% Some functions which return complex types cannot use the \var{result}
1637
asmr_w_adding_explicit_args_fXX=07086_W_"$1" without operand translated into "$1 %st,%st(1)"
1638
asmr_w_adding_explicit_first_arg_fXX=07087_W_"$1 %st(n)" translated into "$1 %st,%st(n)"
1639
asmr_w_adding_explicit_second_arg_fXX=07088_W_"$1 %st(n)" translated into "$1 %st(n),%st"
1640
asmr_e_invalid_char_smaller=07089_E_Char < not allowed here
1641
% The shift operator requires the << characters. Only one
1642
% of those characters was found.
1643
asmr_e_invalid_char_greater=07090_E_Char > not allowed here
1644
% The shift operator requires the >> characters. Only one
1645
% of those characters was found.
1646
asmr_w_align_not_supported=07093_W_ALIGN not supported
1647
asmr_e_no_inc_and_dec_together=07094_E_Inc and Dec cannot be together
1648
% Trying to use an increment and a decrement within the same
1649
% opcode on the 680x0. This is impossible.
1650
asmr_e_invalid_reg_list_in_movem=07095_E_Invalid reglist for movem
1651
% Trying to use the \var{movem} opcode with invalid registers
1652
% to save or restore.
1653
asmr_e_invalid_reg_list_for_opcode=07096_E_Reglist invalid for opcode
1654
asmr_e_higher_cpu_mode_required=07097_E_Higher cpu mode required ($1)
1655
% Trying to use an instruction which is not supported in the current
1656
% cpu mode. Use a higher cpu generation to be able to use this
1657
% opcode in your assembler block
1658
asmr_w_unable_to_determine_reference_size_using_dword=07098_W_No size specified and unable to determine the size of the operands, using DWORD as default
1659
% You should specify explicitly a size for the reference, because
1660
% the compiler is unable to determine what size (byte,word,dword,etc.) it
1661
% should use for the reference. This warning is only used in Delphi mode where
1662
% it falls back to use DWORD as default.
1664
# Assembler/binary writers
1666
# 08018 is the last used one
1668
asmw_f_too_many_asm_files=08000_F_Too many assembler files
1669
% With smartlinking enabled, there are too many assembler
1670
% files generated. Disable smartlinking.
1671
asmw_f_assembler_output_not_supported=08001_F_Selected assembler output not supported
1672
asmw_f_comp_not_supported=08002_F_Comp not supported
1673
asmw_f_direct_not_supported=08003_F_Direct not support for binary writers
1674
% Direct assembler mode is not supported for binary writers.
1675
asmw_e_alloc_data_only_in_bss=08004_E_Allocating of data is only allowed in bss section
1676
asmw_f_no_binary_writer_selected=08005_F_No binary writer selected
1677
asmw_e_opcode_not_in_table=08006_E_Asm: Opcode $1 not in table
1678
asmw_e_invalid_opcode_and_operands=08007_E_Asm: $1 invalid combination of opcode and operands
1679
asmw_e_16bit_not_supported=08008_E_Asm: 16 Bit references not supported
1680
asmw_e_invalid_effective_address=08009_E_Asm: Invalid effective address
1681
asmw_e_immediate_or_reference_expected=08010_E_Asm: Immediate or reference expected
1682
asmw_e_value_exceeds_bounds=08011_E_Asm: $1 value exceeds bounds $2
1683
asmw_e_short_jmp_out_of_range=08012_E_Asm: Short jump is out of range $1
1684
asmw_e_undefined_label=08013_E_Asm: Undefined label $1
1685
asmw_e_comp_not_supported=08014_E_Asm: Comp type not supported for this target
1686
asmw_e_extended_not_supported=08015_E_Asm: Extended type not supported for this target
1687
asmw_e_duplicate_label=08016_E_Asm: Duplicate label $1
1688
asmw_e_redefined_label=08017_E_Asm: Redefined label $1
1689
asmw_e_first_defined_label=08018_E_Asm: First defined here
1690
asmw_e_invalid_register=08019_E_Asm: Invalid register $1
1693
# Executing linker/assembler
1695
# 09034 is the last used one
1699
% \section{Errors of assembling/linking stage}
1700
% This section lists errors that occur when the compiler is processing the
1701
% command line or handling the configuration files.
1702
% \begin{description}
1703
exec_w_source_os_redefined=09000_W_Source operating system redefined
1704
exec_i_assembling_pipe=09001_I_Assembling (pipe) $1
1705
exec_d_cant_create_asmfile=09002_E_Can't create assember file: $1
1706
% The mentioned file can't be created. Check if you have got
1707
% access permissions to create this file
1708
exec_e_cant_create_objectfile=09003_E_Can't create object file: $1
1709
% The mentioned file can't be created. Check if you've
1710
% got access permissions to create this file
1711
exec_e_cant_create_archivefile=09004_E_Can't create archive file: $1
1712
% The mentioned file can't be created. Check if you've
1713
% access permissions to create this file
1714
exec_e_assembler_not_found=09005_E_Assembler $1 not found, switching to external assembling
1715
exec_t_using_assembler=09006_T_Using assembler: $1
1716
exec_e_error_while_assembling=09007_E_Error while assembling exitcode $1
1717
% There was an error while assembling the file using an external assembler.
1718
% Consult the documentation of the assembler tool to find out more information
1720
exec_e_cant_call_assembler=09008_E_Can't call the assembler, error $1 switching to external assembling
1721
exec_i_assembling=09009_I_Assembling $1
1722
exec_i_assembling_smart=09010_I_Assembling with smartlinking $1
1723
exec_w_objfile_not_found=09011_W_Object $1 not found, Linking may fail !
1724
% One of the object file is missing, and linking will probably fail.
1726
exec_w_libfile_not_found=09012_W_Library $1 not found, Linking may fail !
1727
% One of the library file is missing, and linking will probably fail.
1729
exec_e_error_while_linking=09013_E_Error while linking
1730
% Generic error while linking.
1731
exec_e_cant_call_linker=09014_E_Can't call the linker, switching to external linking
1732
exec_i_linking=09015_I_Linking $1
1733
exec_e_util_not_found=09016_E_Util $1 not found, switching to external linking
1734
exec_t_using_util=09017_T_Using util $1
1735
exec_e_exe_not_supported=09018_E_Creation of Executables not supported
1736
exec_e_dll_not_supported=09019_E_Creation of Dynamic/Shared Libraries not supported
1737
exec_i_closing_script=09020_I_Closing script $1
1738
exec_e_res_not_found=09021_E_resource compiler not found, switching to external mode
1739
exec_i_compilingresource=09022_I_Compiling resource $1
1740
exec_t_unit_not_static_linkable_switch_to_smart=09023_T_unit $1 can't be statically linked, switching to smart linking
1741
exec_t_unit_not_smart_linkable_switch_to_static=09024_T_unit $1 can't be smart linked, switching to static linking
1742
exec_t_unit_not_shared_linkable_switch_to_static=09025_T_unit $1 can't be shared linked, switching to static linking
1743
exec_e_unit_not_smart_or_static_linkable=09026_E_unit $1 can't be smart or static linked
1744
exec_e_unit_not_shared_or_static_linkable=09027_E_unit $1 can't be shared or static linked
1749
# Executable information
1751
execinfo_f_cant_process_executable=09028_F_Can't post process executable $1
1752
execinfo_f_cant_open_executable=09029_F_Can't open executable $1
1753
execinfo_x_codesize=09030_X_Size of Code: $1 bytes
1754
execinfo_x_initdatasize=09031_X_Size of initialized data: $1 bytes
1755
execinfo_x_uninitdatasize=09032_X_Size of uninitialized data: $1 bytes
1756
execinfo_x_stackreserve=09033_X_Stack space reserved: $1 bytes
1757
execinfo_x_stackcommit=09034_X_Stack space commited: $1 bytes
1762
# 10041 is the last used one
1765
% \section{Unit loading messages.}
1766
% This section lists all messages that can occur when the compiler is
1767
% loading a unit from disk into memory. Many of these messages are
1768
% informational messages.
1769
% \begin{description}
1770
unit_t_unitsearch=10000_T_Unitsearch: $1
1771
% When you use the \var{-vt}, the compiler tells you where it tries to find
1773
unit_t_ppu_loading=10001_T_PPU Loading $1
1774
% When the \var{-vt} switch is used, the compiler tells you
1775
% what units it loads.
1776
unit_u_ppu_name=10002_U_PPU Name: $1
1777
% When you use the \var{-vu} flag, the unit name is shown.
1778
unit_u_ppu_flags=10003_U_PPU Flags: $1
1779
% When you use the \var{-vu} flag, the unit flags are shown.
1780
unit_u_ppu_crc=10004_U_PPU Crc: $1
1781
% When you use the \var{-vu} flag, the unit CRC check is shown.
1782
unit_u_ppu_time=10005_U_PPU Time: $1
1783
% When you use the \var{-vu} flag, the time the unit was compiled is shown.
1784
unit_u_ppu_file_too_short=10006_U_PPU File too short
1785
% The ppufile is too short, not all declarations are present.
1786
unit_u_ppu_invalid_header=10007_U_PPU Invalid Header (no PPU at the begin)
1787
% A unit file contains as the first three bytes the ascii codes of \var{PPU}
1788
unit_u_ppu_invalid_version=10008_U_PPU Invalid Version $1
1789
% This unit file was compiled with a different version of the compiler, and
1791
unit_u_ppu_invalid_processor=10009_U_PPU is compiled for another processor
1792
% This unit file was compiled for a different processor type, and
1794
unit_u_ppu_invalid_target=10010_U_PPU is compiled for an other target
1795
% This unit file was compiled for a different target, and
1797
unit_u_ppu_source=10011_U_PPU Source: $1
1798
% When you use the \var{-vu} flag, the unit CRC check is shown.
1799
unit_u_ppu_write=10012_U_Writing $1
1800
% When you specify the \var{-vu} switch, the compiler will tell you where it
1801
% writes the unit file.
1802
unit_f_ppu_cannot_write=10013_F_Can't Write PPU-File
1803
% An error occurred when writing the unit file.
1804
unit_f_ppu_read_error=10014_F_Error reading PPU-File
1805
% This means that the unit file was corrupted, and contains invalid
1806
% information. Recompilation will be necessary.
1807
unit_f_ppu_read_unexpected_end=10015_F_unexpected end of PPU-File
1808
% Unexpected end of file. This may mean that the PPU file is
1810
unit_f_ppu_invalid_entry=10016_F_Invalid PPU-File entry: $1
1811
% The unit the compiler is trying to read is corrupted, or generated with a
1812
% newer version of the compiler.
1813
unit_f_ppu_dbx_count_problem=10017_F_PPU Dbx count problem
1814
% There is an inconsistency in the debugging information of the unit.
1815
unit_e_illegal_unit_name=10018_E_Illegal unit name: $1
1816
% The name of the unit does not match the file name.
1817
unit_f_too_much_units=10019_F_Too much units
1818
% \fpc has a limit of 1024 units in a program. You can change this behavior
1819
% by changing the \var{maxunits} constant in the \file{fmodule.pas} file of the
1820
% compiler, and recompiling the compiler.
1821
unit_f_circular_unit_reference=10020_F_Circular unit reference between $1 and $2
1822
% Two units are using each other in the interface part. This is only allowed
1823
% in the \var{implementation} part. At least one unit must contain the other one
1824
% in the \var{implementation} section.
1825
unit_f_cant_compile_unit=10021_F_Can't compile unit $1, no sources available
1826
% A unit was found that needs to be recompiled, but no sources are
1828
unit_f_cant_find_ppu=10022_F_Can't find unit $1
1829
% You tried to use a unit of which the PPU file isn't found by the
1830
% compiler. Check your configuration file for the unit paths
1831
unit_w_unit_name_error=10023_W_Unit $1 was not found but $2 exists
1832
unit_f_unit_name_error=10024_F_Unit $1 searched but $2 found
1833
% Dos truncation of 8 letters for unit PPU files
1834
% may lead to problems when unit name is longer than 8 letters.
1835
unit_w_switch_us_missed=10025_W_Compiling the system unit requires the -Us switch
1836
% When recompiling the system unit (it needs special treatment), the
1837
% \var{-Us} must be specified.
1838
unit_f_errors_in_unit=10026_F_There were $1 errors compiling module, stopping
1839
% When the compiler encounters a fatal error or too many errors in a module
1840
% then it stops with this message.
1841
unit_u_load_unit=10027_U_Load from $1 ($2) unit $3
1842
% When you use the \var{-vu} flag, which unit is loaded from which unit is
1844
unit_u_recompile_crc_change=10028_U_Recompiling $1, checksum changed for $2
1845
unit_u_recompile_source_found_alone=10029_U_Recompiling $1, source found only
1846
% When you use the \var{-vu} flag, these messages tell you why the current
1847
% unit is recompiled.
1848
unit_u_recompile_staticlib_is_older=10030_U_Recompiling unit, static lib is older than ppufile
1849
% When you use the \var{-vu} flag, the compiler warns if the static library
1850
% of the unit are older than the unit file itself.
1851
unit_u_recompile_sharedlib_is_older=10031_U_Recompiling unit, shared lib is older than ppufile
1852
% When you use the \var{-vu} flag, the compiler warns if the shared library
1853
% of the unit are older than the unit file itself.
1854
unit_u_recompile_obj_and_asm_older=10032_U_Recompiling unit, obj and asm are older than ppufile
1855
% When you use the \var{-vu} flag, the compiler warns if the assembler or
1856
% object file of the unit are older than the unit file itself.
1857
unit_u_recompile_obj_older_than_asm=10033_U_Recompiling unit, obj is older than asm
1858
% When you use the \var{-vu} flag, the compiler warns if the assembler
1859
% file of the unit is older than the object file of the unit.
1860
unit_u_parsing_interface=10034_U_Parsing interface of $1
1861
% When you use the \var{-vu} flag, the compiler warns that it starts
1862
% parsing the interface part of the unit
1863
unit_u_parsing_implementation=10035_U_Parsing implementation of $1
1864
% When you use the \var{-vu} flag, the compiler warns that it starts
1865
% parsing the implementation part of the unit
1866
unit_u_second_load_unit=10036_U_Second load for unit $1
1867
% When you use the \var{-vu} flag, the compiler warns that it starts
1868
% recompiling a unit for the second time. This can happend with interdepend
1870
unit_u_check_time=10037_U_PPU Check file $1 time $2
1871
% When you use the \var{-vu} flag, the compiler show the filename and
1872
% date and time of the file which a recompile depends on
1873
unit_h_cond_not_set_in_last_compile=10038_H_Conditional $1 was not set at startup in last compilation of $2
1874
% when recompilation of an unit is required the compiler will check that
1875
% the same conditionals are set for the recompiliation. The compiler has
1876
% found a conditional that currently is defined, but was not used the last
1877
% time the unit was compiled.
1878
unit_h_cond_set_in_last_compile=10039_H_Conditional $1 was set at startup in last compilation of $2
1879
% when recompilation of an unit is required the compiler will check that
1880
% the same conditionals are set for the recompiliation. The compiler has
1881
% found a conditional that was used the last time the unit was compiled, but
1882
% the conditional is currently not defined.
1883
unit_w_cant_compile_unit_with_changed_incfile=10040_W_Can't recompile unit $1, but found modifed include files
1884
% A unit was found to have modified include files, but
1885
% some source files were not found, so recompilation is impossible.
1886
unit_h_source_modified=10041_H_File $1 is newer than Release PPU file $2
1887
% A modified source file for a unit was found that was compiled with the
1888
% release flag (-Ur). The unit will not implicitly be recompiled because
1889
% this release flag is set.
1890
unit_u_ppu_invalid_fpumode=10042_U_Using a unit which was not compiled with correct FPU mode
1891
% Trying to compile code while using units which were not compiled with
1892
% the same floating point format mode. Either all code should be compiled
1893
% with FPU emulation on, or with FPU emulation off.
1894
unit_u_loading_interface_units=10043_U_Loading interface units from $1
1895
% When you use the \var{-vu} flag, the compiler warns that it starts
1896
% loading the units defined in the interface part of the unit.
1897
unit_u_loading_implementation_units=10044_U_Loading implementation units from $1
1898
% When you use the \var{-vu} flag, the compiler warns that it starts
1899
% loading the units defined in the implementation part of the unit.
1900
unit_u_interface_crc_changed=10045_U_Interface CRC changed for unit $1
1901
% When you use the \var{-vu} flag, the compiler warns that it the
1902
% CRC calculated for the interface has been changed after the implementation
1904
unit_u_implementation_crc_changed=10046_U_Implementation CRC changed for unit $1
1905
% When you use the \var{-vu} flag, the compiler warns that it the
1906
% CRC calculated has been changed after the implementation
1908
unit_u_finished_compiling=10047_U_Finished compiling unit $1
1909
% When you use the \var{-vu} flag, the compiler warns that it
1910
% has finished compiling the unit.
1911
unit_u_add_depend_to=10048_U_Add dependency of $1 to $2
1912
% When you use the \var{-vu} flag, the compiler warns that it
1913
% has added a dependency between the two units.
1914
unit_u_no_reload_is_caller=10049_U_No reload, is caller: $1
1915
% When you use the \var{-vu} flag, the compiler warns that it
1916
% has will not reload the unit because it is the unit that wants
1918
unit_u_no_reload_in_second_compile=10050_U_No reload, already in second compile: $1
1919
% When you use the \var{-vu} flag, the compiler warns that it
1920
% has will not reload the unit because it is already in a second recompile
1921
unit_u_flag_for_reload=10051_U_Flag for reload: $1
1922
% When you use the \var{-vu} flag, the compiler warns that it
1923
% has to reload the unit
1924
unit_u_forced_reload=10052_U_Forced reloading
1925
% When you use the \var{-vu} flag, the compiler warns that it
1926
% has is reloading the unit because it was required
1927
unit_u_previous_state=10053_U_Previous state of $1: $2
1928
% When you use the \var{-vu} flag, the compiler shows the
1929
% previous state of the unit
1930
unit_u_second_compile_unit=10054_U_Already compiling $1, setting second compile
1931
% When you use the \var{-vu} flag, the compiler warns that it starts
1932
% recompiling a unit for the second time. This can happend with interdepend
1934
unit_u_loading_unit=10055_U_Loading unit $1
1935
% When you use the \var{-vu} flag, the compiler warns that it starts
1937
unit_u_finished_loading_unit=10056_U_Finished loading unit $1
1938
% When you use the \var{-vu} flag, the compiler warns that it finished
1940
unit_u_registering_new_unit=10057_U_Registering new unit $1
1941
% When you use the \var{-vu} flag, the compiler warns that it has
1942
% found a new unit and registers it in the internal lists.
1943
unit_u_reresolving_unit=10058_U_Re-resolving unit $1
1944
% When you use the \var{-vu} flag, the compiler warns that it
1945
% has to recalculate the internal data of the unit
1946
unit_u_skipping_reresolving_unit=10059_U_Skipping re-resolving unit $1, still loading used units
1947
% When you use the \var{-vu} flag, the compiler warns that it
1948
% skips to recalculate the internal data of the unit because there
1949
% is no data to recalculate
1956
# 11039 is the last used one
1958
option_usage=11000_$1 [options] <inputfile> [options]
1961
% \section{Command-line handling errors}
1962
% This section lists errors that occur when the compiler is processing the
1963
% command line or handling the configuration files.
1964
% \begin{description}
1965
option_only_one_source_support=11001_W_Only one source file supported
1966
% You can specify only one source file on the command line. The first
1967
% one will be compiled, others will be ignored. This may indicate that
1968
% you forgot a \var{'-'} sign.
1969
option_def_only_for_os2=11002_W_DEF file can be created only for OS/2
1970
% This option can only be specified when you're compiling for OS/2
1971
option_no_nested_response_file=11003_E_nested response files are not supported
1972
% you cannot nest response files with the \var{@file} command-line option.
1973
option_no_source_found=11004_F_No source file name in command line
1974
% The compiler expects a source file name on the command line.
1975
option_no_option_found=11005_N_No option inside $1 config file
1976
% The compiler didn't find any option in that config file.
1977
option_illegal_para=11006_E_Illegal parameter: $1
1978
% You specified an unknown option.
1979
option_help_pages_para=11007_H_-? writes help pages
1980
% When an unknown option is given, this message is diplayed.
1981
option_too_many_cfg_files=11008_F_Too many config files nested
1982
% You can only nest up to 16 config files.
1983
option_unable_open_file=11009_F_Unable to open file $1
1984
% The option file cannot be found.
1985
option_reading_further_from=11010_D_Reading further options from $1
1986
% Displayed when you have notes turned on, and the compiler switches
1987
% to another options file.
1988
option_target_is_already_set=11011_W_Target is already set to: $1
1989
% Displayed if more than one \var{-T} option is specified.
1990
option_no_shared_lib_under_dos=11012_W_Shared libs not supported on DOS platform, reverting to static
1991
% If you specify \var{-CD} for the \dos platform, this message is displayed.
1992
% The compiler supports only static libraries under \dos
1993
option_too_many_ifdef=11013_F_too many IF(N)DEFs
1994
% the \var{\#IF(N)DEF} statements in the options file are not balanced with
1995
% the \var{\#ENDIF} statements.
1996
option_too_many_endif=11014_F_too many ENDIFs
1997
% the \var{\#IF(N)DEF} statements in the options file are not balanced with
1998
% the \var{\#ENDIF} statements.
1999
option_too_less_endif=11015_F_open conditional at the end of the file
2000
% the \var{\#IF(N)DEF} statements in the options file are not balanced with
2001
% the \var{\#ENDIF} statements.
2002
option_no_debug_support=11016_W_Debug information generation is not supported by this executable
2003
% It is possible to have a compiler executable that doesn't support
2004
% the generation of debugging info. If you use such an executable with the
2005
% \var{-g} switch, this warning will be displayed.
2006
option_no_debug_support_recompile_fpc=11017_H_Try recompiling with -dGDB
2007
% It is possible to have a compiler executable that doesn't support
2008
% the generation of debugging info. If you use such an executable with the
2009
% \var{-g} switch, this warning will be displayed.
2010
option_obsolete_switch=11018_E_You are using the obsolete switch $1
2011
% this warns you when you use a switch that is not needed/supported anymore.
2012
% It is recommended that you remove the switch to overcome problems in the
2013
% future, when the switch meaning may change.
2014
option_obsolete_switch_use_new=11019_E_You are using the obsolete switch $1, please use $2
2015
% this warns you when you use a switch that is not supported anymore. You
2016
% must now use the second switch instead.
2017
% It is recommended that you change the switch to overcome problems in the
2018
% future, when the switch meaning may change.
2019
option_switch_bin_to_src_assembler=11020_N_Switching assembler to default source writing assembler
2020
% this notifies you that the assembler has been changed because you used the
2021
% -a switch which can't be used with a binary assembler writer.
2022
option_incompatible_asm=11021_W_Assembler output selected "$1" is not compatible with "$2"
2023
option_asm_forced=11022_W_"$1" assembler use forced
2024
% The assembler output selected can not generate
2025
% object files with the correct format. Therefore, the
2026
% default assembler for this target is used instead.
2027
option_using_file=11026_T_Reading options from file $1
2028
% Options are also read from this file
2029
option_using_env=11027_T_Reading options from environment $1
2030
% Options are also read from this environment string
2031
option_handling_option=11028_D_Handling option "$1"
2032
% Debug info that an option is found and will be handled
2033
option_help_press_enter=11029__*** press enter ***
2034
option_start_reading_configfile=11030_H_Start of reading config file $1
2035
% Starting of config file parsing.
2036
option_end_reading_configfile=11031_H_End of reading config file $1
2037
% End of config file parsing.
2038
option_interpreting_option=11032_D_interpreting option "$1"
2039
option_interpreting_firstpass_option=11036_D_interpreting firstpass option "$1"
2040
option_interpreting_file_option=11033_D_interpreting file option "$1"
2041
option_read_config_file=11034_D_Reading config file "$1"
2042
option_found_file=11035_D_found source file name "$1"
2043
option_defining_symbol=11037_D_Defining symbol $1
2044
option_undefining_symbol=11038_D_Undefining symbol $1
2045
% Additional infos about options, displayed
2046
% when you have debug option turned on.
2047
option_code_page_not_available=11039_E_Unknown code page
2055
Free Pascal Compiler version $FPCVER [$FPCDATE] for $FPCTARGET
2056
Copyright (c) 1993-2004 by Florian Klaempfl
2063
Free Pascal Compiler version $FPCVER
2065
Compiler Date : $FPCDATE
2066
Compiler Target: $FPCTARGET
2071
This program comes under the GNU General Public Licence
2072
For more information read COPYING.FPC
2074
Report bugs,suggestions etc to:
2075
bugrep@freepascal.org
2079
# Help pages (option -? and -h)
2081
# The first character on the line indicates who will display this
2082
# line, the current possibilities are :
2086
# e = in extended debug mode only
2087
# P = PowerPC targets
2089
# V = Virtual machine targets
2090
# The second character also indicates who will display this line,
2091
# (if the above character was TRUE) the current possibilities are :
2093
# g = with GDB info supported by the compiler
2096
# The third character represents the indentation level.
2098
option_help_pages=11025_[
2099
**0*_put + after a boolean switch option to enable it, - to disable it
2100
**1a_the compiler doesn't delete the generated assembler file
2101
**2al_list sourcecode lines in assembler file
2102
**2ar_list register allocation/release info in assembler file
2103
**2at_list temp allocation/release info in assembler file
2104
**1b_generate browser info
2105
**2bl_generate local symbol info
2106
**1B_build all modules
2107
**1C<x>_code generation options:
2108
**2CD_create also dynamic library (not supported)
2109
**2Ce_Compilation with emulated floating point opcodes
2110
**2Cf_Select fpu instruction set to use
2111
**2Cg_Generate PIC code
2112
**2Ch<n>_<n> bytes heap (between 1023 and 67107840)
2114
**2Cn_omit linking stage
2115
**2Co_check overflow of integer operations
2116
**2Cr_range checking
2117
**2CR_verify object method call validity
2118
**2Cs<n>_set stack size to <n>
2119
**2Ct_stack checking
2120
**2CX_create also smartlinked library
2121
**1d<x>_defines the symbol <x>
2122
*O1D_generate a DEF file
2123
*O2Dd<x>_set description to <x>
2124
*O2Dw_PM application
2125
**1e<x>_set path to executable
2127
**1F<x>_set file names and paths:
2128
**2FD<x>_sets the directory where to search for compiler utilities
2129
**2Fe<x>_redirect error output to <x>
2130
**2FE<x>_set exe/unit output path to <x>
2131
**2Fi<x>_adds <x> to include path
2132
**2Fl<x>_adds <x> to library path
2133
*L2FL<x>_uses <x> as dynamic linker
2134
**2Fo<x>_adds <x> to object path
2135
**2Fr<x>_load error message file <x>
2136
**2Fu<x>_adds <x> to unit path
2137
**2FU<x>_set unit output path to <x>, overrides -FE
2138
*g1g_generate debugger information:
2141
*g2gh_use heap trace unit (for memory leak debugging)
2142
*g2gl_use line info unit to show more info for backtraces
2143
*g2gc_generate checks for pointers
2145
**2iD_return compiler date
2146
**2iV_return compiler version
2147
**2iSO_return compiler OS
2148
**2iSP_return compiler processor
2149
**2iTO_return target OS
2150
**2iTP_return target processor
2151
**1I<x>_adds <x> to include path
2152
**1k<x>_Pass <x> to the linker
2154
**1M<x>_set language mode to <x>
2155
**2Mfpc_free pascal dialect (default)
2156
**2Mobjfpc_switch some Delphi 2 extensions on
2157
**2Mdelphi_tries to be Delphi compatible
2158
**2Mtp_tries to be TP/BP 7.0 compatible
2159
**2Mgpc_tries to be gpc compatible
2160
**2Mmacpas_tries to be compatible to the macintosh pascal dialects
2161
**1n_don't read the default config file
2162
**1o<x>_change the name of the executable produced to <x>
2163
**1pg_generate profile code for gprof (defines FPC_PROFILE)
2164
*L1P_use pipes instead of creating temporary assembler files
2165
**1S<x>_syntax options:
2166
**2S2_same as -Mobjfpc
2167
**2Sc_supports operators like C (*=,+=,/= and -=)
2168
**2Sa_include assertion code.
2169
**2Sd_same as -Mdelphi
2170
**2Se<x>_compiler stops after the <x> errors (default is 1)
2171
**2Sg_allow LABEL and GOTO
2172
**2Sh_Use ansistrings
2173
**2Si_support C++ styled INLINE
2174
**2Sm_support macros like C (global)
2177
**2Ss_constructor name must be init (destructor must be done)
2178
**2St_allow static keyword in objects
2179
**1s_don't call assembler and linker
2180
**2sh_Generate script to link on host
2181
**2st_Generate script to link on target
2182
**2sr_Skip register allocation phase (optimizations will be disabled)
2183
**1u<x>_undefines the symbol <x>
2185
**2Un_don't check the unit name
2186
**2Ur_generate release unit files
2187
**2Us_compile a system unit
2188
**1v<x>_Be verbose. <x> is a combination of the following letters:
2189
**2*_e : Show errors (default) d : Show debug info
2190
**2*_w : Show warnings u : Show unit info
2191
**2*_n : Show notes t : Show tried/used files
2192
**2*_h : Show hints m : Show defined macros
2193
**2*_i : Show general info p : Show compiled procedures
2194
**2*_l : Show linenumbers c : Show conditionals
2195
**2*_a : Show everything 0 : Show nothing (except errors)
2196
**2*_b : Show all procedure r : Rhide/GCC compatibility mode
2197
**2*_ declarations if an error x : Executable info (Win32 only)
2199
**1V_write fpcdebug.txt file with lots of debugging info
2200
**1X_executable options:
2201
*L2Xc_link with the c library
2202
**2Xs_strip all symbols from executable
2203
**2XD_try to link dynamic (defines FPC_LINK_DYNAMIC)
2204
**2XS_try to link static (default) (defines FPC_LINK_STATIC)
2205
**2XX_try to link smart (defines FPC_LINK_SMART)
2206
**0*_Processor specific options:
2207
3*1A<x>_output format:
2208
3*2Aas_assemble using GNU AS
2209
3*2Anasmcoff_coff (Go32v2) file using Nasm
2210
3*2Anasmelf_elf32 (Linux) file using Nasm
2211
3*2Awasm_obj file using Wasm (Watcom)
2212
3*2Anasmobj_obj file using Nasm
2213
3*2Amasm_obj file using Masm (Microsoft)
2214
3*2Atasm_obj file using Tasm (Borland)
2215
3*2Acoff_coff (Go32v2) using internal writer
2216
3*2Apecoff_pecoff (Win32) using internal writer
2217
3*1R<x>_assembler reading style:
2218
3*2Ratt_read AT&T style assembler
2219
3*2Rintel_read Intel style assembler
2220
3*2Rdirect_copy assembler text directly to assembler file
2221
3*1O<x>_optimizations:
2222
3*2Og_generate smaller code
2223
3*2OG_generate faster code (default)
2224
3*2Or_keep certain variables in registers
2225
3*2Ou_enable uncertain optimizations (see docs)
2226
3*2O1_level 1 optimizations (quick optimizations)
2227
3*2O2_level 2 optimizations (-O1 + slower optimizations)
2228
3*2O3_level 3 optimizations (-O2 repeatedly, max 5 times)
2229
3*2Op<x>_target processor:
2230
3*3Op1_set target processor to 386/486
2231
3*3Op2_set target processor to Pentium/PentiumMMX (tm)
2232
3*3Op3_set target processor to PPro/PII/c6x86/K6 (tm)
2233
3*1T<x>_Target operating system:
2234
3*2Temx_OS/2 via EMX (including EMX/RSX extender)
2235
3*2Tgo32v2_Version 2 of DJ Delorie DOS extender
2237
3*2Tnetware_Novell Netware Module (clib)
2238
3*2Tos2_OS/2 / eComStation
2239
3*2Tsunos_SunOS/Solaris
2240
3*2Twatcom_Watcom compatible DOS extender
2241
3*2Twdosx_WDOSX DOS extender
2242
3*2Twin32_Windows 32 Bit
2243
3*1W<x>_Win32-like target options
2244
3*2WB<x>_Set Image base to Hexadecimal <x> value
2245
3*2WC_Specify console type application
2246
3*2WD_Use DEFFILE to export functions of DLL or EXE
2247
3*2WF_Specify full-screen type application (OS/2 only)
2248
3*2WG_Specify graphic type application
2249
3*2WN_Do not generate relocation code (necessary for debugging)
2250
3*2WR_Generate relocation code
2251
6*1A<x>_output format
2252
6*2Aas_Unix o-file using GNU AS
2253
6*2Agas_GNU Motorola assembler
2254
6*2Amit_MIT Syntax (old GAS)
2255
6*2Amot_Standard Motorola assembler
2257
6*2Oa_turn on the optimizer
2258
6*2Og_generate smaller code
2259
6*2OG_generate faster code (default)
2260
6*2Ox_optimize maximum (still BUGGY!!!)
2261
6*2O0_set target processor to a MC68000
2262
6*2O2_set target processor to a MC68020+ (default)
2263
6*1R<x>_assembler reading style:
2264
6*2RMOT_read motorola style assembler
2265
6*1T<x>_Target operating system:
2266
6*2Tamiga_Commodore Amiga
2267
6*2Tatari_Atari ST/STe/TT
2269
6*2Tmacos_Macintosh m68k (not supported)
2271
P*1T<x>_Target operating system:
2272
P*2Tdarwin_Darwin and MacOS X on PowerPC
2273
P*2Tlinux_Linux on PowerPC
2274
P*2Tmacos_MacOS (classic) on PowerPC
2276
P*2WC_Specify console type application (MacOS only)
2277
P*2WG_Specify graphic type application (MacOS only)
2278
P*2WT_Specify tool type application (MPW tool, MacOS only)
2280
**1?_shows this help
2281
**1h_shows this help without waiting