Initial revision
[AROS-Contrib.git] / development / compilers / freepascal / compiler / errore.msg
blob49e735cc9db370ab48021a938128e6bb99d95173
1 #\r
2 #   $Id: errore.msg,v 1.1.2.12 2000/12/16 15:54:51 jonas Exp $\r
3 #   This file is part of the Free Pascal Compiler\r
4 #   Copyright (c) 1999-2000 by the Free Pascal Development team\r
5 #\r
6 #   English (default) Language File for Free Pascal\r
7 #\r
8 #   See the file COPYING.FPC, included in this distribution,\r
9 #   for details about the copyright.\r
10 #\r
11 #   This program is distributed in the hope that it will be useful,\r
12 #   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
13 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\r
14 #\r
15 #\r
16 # The constants are build in the following order:\r
17 # <part>_<type>_<txtidentifier>\r
18 #\r
19 # <part> is the part of the compiler the message is used\r
20 #   asmr_     assembler parsing\r
21 #   asmw_     assembler writing/binary writers\r
23 #   unit_     unit handling\r
24 #   scan_     scanner\r
25 #   parser_   parser\r
26 #   type_     type checking\r
27 #   general_  general info\r
28 #   exec_     calls to assembler, linker, binder\r
29 #\r
30 # <type> the type of the message it should normally used for\r
31 #   f_   fatal error\r
32 #   e_   error\r
33 #   w_   warning\r
34 #   n_   note\r
35 #   h_   hint\r
36 #   i_   info\r
37 #   l_   linenumber\r
38 #   u_   used\r
39 #   t_   tried\r
40 #   m_   macro\r
41 #   p_   procedure\r
42 #   c_   conditional\r
43 #   d_   debug message\r
44 #   b_   display overloaded procedures\r
45 #   x_   executable informations\r
46 #\r
48 #\r
49 # General\r
50 #\r
51 # 01016 is the last used one\r
52 #\r
53 # BeginOfTeX\r
54 % \section{General compiler messages}\r
55 % This section gives the compiler messages which are not fatal, but which\r
56 % display useful information. The number of such messages can be\r
57 % controlled with the various verbosity level \var{-v} switches.\r
58 % \begin{description}\r
59 general_t_compilername=01000_T_Compiler: $1\r
60 % When the \var{-vt} switch is used, this line tells you what compiler\r
61 % is used.\r
62 general_d_sourceos=01001_D_Compiler OS: $1\r
63 % When the \var{-vd} switch is used, this line tells you what the source\r
64 % operating system is.\r
65 general_i_targetos=01002_I_Target OS: $1\r
66 % When the \var{-vd} switch is used, this line tells you what the target\r
67 % operating system is.\r
68 general_t_exepath=01003_T_Using executable path: $1\r
69 % When the \var{-vt} switch is used, this line tells you where the compiler\r
70 % looks for it's binaries.\r
71 general_t_unitpath=01004_T_Using unit path: $1\r
72 % When the \var{-vt} switch is used, this line tells you where the compiler\r
73 % looks for compiled units. You can set this path with the \var{-Fu}\r
74 general_t_includepath=01005_T_Using include path: $1\r
75 % When the \var{-vt} switch is used, this line tells you where the compiler\r
76 % looks for it's include files (files used in \var{\{\$I xxx\}} statements).\r
77 % You can set this path with the \var{-I} option.\r
78 general_t_librarypath=01006_T_Using library path: $1\r
79 % When the \var{-vt} switch is used, this line tells you where the compiler\r
80 % looks for the libraries. You can set this path with the \var{-Fl} option.\r
81 general_t_objectpath=01007_T_Using object path: $1\r
82 % When the \var{-vt} switch is used, this line tells you where the compiler\r
83 % looks for object files you link in (files used in \var{\{\$L xxx\}} statements).\r
84 % You can set this path with the \var{-Fo} option.\r
85 general_i_abslines_compiled=01008_I_$1 Lines compiled, $2 sec\r
86 % When the \var{-vi} switch is used, the compiler reports the number\r
87 % of lines compiled, and the time it took to compile them (real time,\r
88 % not program time).\r
89 general_f_no_memory_left=01009_F_No memory left\r
90 % The compiler doesn't have enough memory to compile your program. There are\r
91 % several remedies for this:\r
92 % \begin{itemize}\r
93 % \item If you're using the build option of the compiler, try compiling the\r
94 % different units manually.\r
95 % \item If you're compiling a huge program, split it up in units, and compile\r
96 % these separately.\r
97 % \item If the previous two don't work, recompile the compiler with a bigger\r
98 % heap (you can use the \var{-Ch} option for this, \seeo{Ch})\r
99 % \end{itemize}\r
100 general_i_writingresourcefile=01010_I_Writing Resource String Table file: $1\r
101 % This message is shown when the compiler writes the Resource String Table\r
102 % file containing all the resource strings for a program.\r
103 general_e_errorwritingresourcefile=01011_E_Writing Resource String Table file: $1\r
104 % This message is shown when the compiler encountered an error when writing\r
105 % the Resource String Table file\r
106 general_i_fatal=01012_I_Fatal:\r
107 % Prefix for Fatal Errors\r
108 general_i_error=01013_I_Error:\r
109 % Prefix for Errors\r
110 general_i_warning=01014_I_Warning:\r
111 % Prefix for Warnings\r
112 general_i_note=01015_I_Note:\r
113 % Prefix for Notes\r
114 general_i_hint=01016_I_Hint:\r
115 % Prefix for Hints\r
116 % \end{description}\r
118 # Scanner\r
120 # 02057 is the last used one\r
122 % \section{Scanner messages.}\r
123 % This section lists the messages that the scanner emits. The scanner takes\r
124 % care of the lexical structure of the pascal file, i.e. it tries to find\r
125 % reserved words, strings, etc. It also takes care of directives and\r
126 % conditional compiling handling.\r
127 % \begin{description}\r
128 scan_f_end_of_file=02000_F_Unexpected end of file\r
129 % this typically happens in one of the following cases :\r
130 % \begin{itemize}\r
131 % \item The source file ends before the final \var{end.} statement. This\r
132 % happens mostly when the \var{begin} and \var{end} statements aren't\r
133 % balanced;\r
134 % \item An include file ends in the middle of a statement.\r
135 % \item A comment wasn't closed.\r
136 % \end{itemize}\r
137 scan_f_string_exceeds_line=02001_F_String exceeds line\r
138 % You forgot probably to include the closing ' in a string, so it occupies\r
139 % multiple lines.\r
140 scan_f_illegal_char=02002_F_illegal character $1 ($2)\r
141 % An illegal character was encountered in the input file.\r
142 scan_f_syn_expected=02003_F_Syntax error, $1 expected but $2 found\r
143 % This indicates that the compiler expected a different token than\r
144 % the one you typed. It can occur almost everywhere where you make a\r
145 % mistake against the pascal language.\r
146 scan_t_start_include_file=02004_T_Start reading includefile $1\r
147 % When you provide the \var{-vt} switch, the compiler tells you\r
148 % when it starts reading an included file.\r
149 scan_w_comment_level=02005_W_Comment level $1 found\r
150 % When the \var{-vw} switch is used, then the compiler warns you if\r
151 % it finds nested comments. Nested comments are not allowed in Turbo Pascal\r
152 % and can be a possible source of errors.\r
153 scan_n_far_directive_ignored=02006_N_$F directive (FAR) ignored\r
154 % The \var{FAR} directive is a 16-bit construction which is recorgnised\r
155 % but ignored by the compiler, since it produces 32 bit code.\r
156 scan_n_stack_check_global_under_linux=02007_N_Stack check is global under Linux\r
157 % Stack checking with the \var{-Cs} switch is ignored under \linux, since\r
158 % \linux does this for you. Only displayed when \var{-vn} is used.\r
159 scan_n_ignored_switch=02008_N_Ignored compiler switch $1\r
160 % With \var{-vn} on, the compiler warns if it ignores a switch\r
161 scan_w_illegal_switch=02009_W_Illegal compiler switch $1\r
162 % You included a compiler switch (i.e. \var{\{\$... \}}) which the compiler\r
163 % doesn't know.\r
164 scan_w_switch_is_global=02010_W_This compiler switch has a global effect\r
165 % When \var{-vw} is used, the compiler warns if a switch is global.\r
166 scan_e_illegal_char_const=02011_E_Illegal char constant\r
167 % This happens when you specify a character with its ASCII code, as in\r
168 % \var{\#96}, but the number is either illegal, or out of range. The range\r
169 % is 1-255.\r
170 scan_f_cannot_open_input=02012_F_Can't open file $1\r
171 % \fpc cannot find the program or unit source file you specified on the\r
172 % command line.\r
173 scan_f_cannot_open_includefile=02013_F_Can't open include file $1\r
174 % \fpc cannot find the source file you specified in a \var{\{\$include ..\}}\r
175 % statement.\r
176 scan_e_too_much_endifs=02014_E_Too many $ENDIFs or $ELSEs\r
177 % Your \var{\{\$IFDEF ..\}} and {\{\$ENDIF\}} statements aren't balanced.\r
178 scan_w_only_pack_records=02015_W_Records fields can be aligned to 1,2,4,8,16 or 32 bytes only\r
179 % You are specifying the \var{\{\$PACKRECORDS n\} } with an illegal value for\r
180 % \var{n}. Only 1, 2, 4, 8, 16 and 32 are valid in this case.\r
181 scan_w_only_pack_enum=02016_W_Enumerated can be saved in 1,2 or 4 bytes only\r
182 % You are specifying the \var{\{\$PACKENUM n\}} with an illegal value for\r
183 % \var{n}. Only 1,2 or 4 are valid in this case.\r
184 scan_e_endif_expected=02017_E_$ENDIF expected for $1 $2 defined in line $3\r
185 % Your conditional compilation statements are unbalanced.\r
186 scan_e_preproc_syntax_error=02018_E_Syntax error while parsing a conditional compiling expression\r
187 % There is an error in the expression following the \var{\{\$if ..\}} compiler\r
188 % directive.\r
189 scan_e_error_in_preproc_expr=02019_E_Evaluating a conditional compiling expression\r
190 % There is an error in the expression following the \var{\{\$if ..\}} compiler\r
191 % directive.\r
192 scan_w_macro_cut_after_255_chars=02020_W_Macro contents is cut after char 255 to evalute expression\r
193 % The contents of macros canno be longer than 255 characters. This is a\r
194 % safety in the compiler, to prevent buffer overflows. This is shown as a\r
195 % warning, i.e. when the \var{-vw} switch is used.\r
196 scan_e_endif_without_if=02021_E_ENDIF without IF(N)DEF\r
197 % Your \var{\{\$IFDEF ..\}} and {\{\$ENDIF\}} statements aren't balanced.\r
198 scan_f_user_defined=02022_F_User defined: $1\r
199 % A user defined fatal error occurred. see also the \progref\r
200 scan_e_user_defined=02023_E_User defined: $1\r
201 % A user defined error occurred. see also the \progref\r
202 scan_w_user_defined=02024_W_User defined: $1\r
203 % A user defined warning occurred. see also the \progref\r
204 scan_n_user_defined=02025_N_User defined: $1\r
205 % A user defined note was encountered. see also the \progref\r
206 scan_h_user_defined=02026_H_User defined: $1\r
207 % A user defined hint was encountered. see also the \progref\r
208 scan_i_user_defined=02027_I_User defined: $1\r
209 % User defined information was encountered. see also the \progref\r
210 scan_e_keyword_cant_be_a_macro=02028_E_Keyword redefined as macro has no effect\r
211 % You cannot redefine keywords with macros.\r
212 scan_f_macro_buffer_overflow=02029_F_Macro buffer overflow while reading or expanding a macro\r
213 % Your macro or it's result  was too long for the compiler.\r
214 scan_w_macro_deep_ten=02030_W_Extension of macros exceeds a deep of 16.\r
215 % When expanding a macro macros have been nested to a level of 16.\r
216 % The compiler will expand no further, since this may be a sign that\r
217 % recursion is used.\r
218 scan_e_wrong_styled_switch=02031_E_compiler switches aren't allowed in (* ... *) styled comments\r
219 % Compiler switches should always be between \var{\{ \}} comment delimiters.\r
220 scan_d_handling_switch=02032_D_Handling switch "$1"\r
221 % When you set debugging info on (\var{-vd}) the compiler tells you when it\r
222 % is evaluating conditional compile statements.\r
223 scan_c_endif_found=02033_C_ENDIF $1 found\r
224 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
225 % where it encounters conditional statements.\r
226 scan_c_ifdef_found=02034_C_IFDEF $1 found, $2\r
227 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
228 % where it encounters conditional statements.\r
229 scan_c_ifopt_found=02035_C_IFOPT $1 found, $2\r
230 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
231 % where it encounters conditional statements.\r
232 scan_c_if_found=02036_C_IF $1 found, $2\r
233 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
234 % where it encounters conditional statements.\r
235 scan_c_ifndef_found=02037_C_IFNDEF $1 found, $2\r
236 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
237 % where it encounters conditional statements.\r
238 scan_c_else_found=02038_C_ELSE $1 found, $2\r
239 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
240 % where it encounters conditional statements.\r
241 scan_c_skipping_until=02039_C_Skipping until...\r
242 % When you turn on conditional messages(\var{-vc}), the compiler tells you\r
243 % where it encounters conditional statements, and whether it is skipping or\r
244 % compiling parts.\r
245 scan_i_press_enter=02040_I_Press <return> to continue\r
246 % When the \var{-vi} switch is used, the compiler stops compilation\r
247 % and waits for the \var{Enter} key to be pressed when it encounters\r
248 % a \var{\{\$STOP\}} directive.\r
249 scan_w_unsupported_switch=02041_W_Unsupported switch $1\r
250 % When warings are turned on (\var{-vw}) the compiler warns you about\r
251 % unsupported switches. This means that the switch is used in Delphi or\r
252 % Turbo Pascal, but not in \fpc\r
253 scan_w_illegal_directive=02042_W_Illegal compiler directive $1\r
254 % When warings are turned on (\var{-vw}) the compiler warns you about\r
255 % unrecognised switches. For a list of recognised switches, \progref\r
256 scan_t_back_in=02043_T_Back in $1\r
257 % When you use (\var{-vt}) the compiler tells you when it has finished\r
258 % reading an include file.\r
259 scan_w_unsupported_app_type=02044_W_Unsupported application type: $1\r
260 % You get this warning, ff you specify an unknown application type\r
261 % with the directive \var{\{\$APPTYPE\}}\r
262 scan_w_app_type_not_support=02045_W_APPTYPE isn't support by the target OS\r
263 % The \var{\{\$APPTYPE\}} directive is supported by win32 applications only.\r
264 scan_w_decription_not_support=02046_W_DESCRIPTION is only supported for OS2 and Win32\r
265 % The \var{\{\$DESCRIPTION\}} directive is only supported for OS2 and Win32 targets.\r
266 scan_n_version_not_support=02047_N_VERSION is not supported by target OS.\r
267 % The \var{\{\$VERSION\}} directive is only supported by win32 target.\r
268 scan_n_only_exe_version=02048_N_VERSION only for exes or DLLs\r
269 % The \var{\{\$VERSION\}} directive is only used for executable or DLL sources.\r
270 scan_w_wrong_version_ignored=02049_W_Wrong format for VERSION directive $1\r
271 % The \var{\{\$VERSION\}} directive format is majorversion.minorversion\r
272 % where majorversion and minorversion are words.\r
273 scan_w_unsupported_asmmode_specifier=02050_W_Unsupported assembler style specified $1\r
274 % When you specify an assembler mode with the \var{\{\$ASMMODE xxx\}}\r
275 % the compiler didn't recognize the mode you specified.\r
276 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\r
277 % It is not possible to switch from one assembler reader to another\r
278 % inside an assmebler block. The new reader will be used for next\r
279 % assembler statement only.\r
280 scan_e_wrong_switch_toggle=02052_E_Wrong switch toggle, use ON/OFF or +/-\r
281 % You need to use ON or OFF or a + or - to toggle the switch\r
282 scan_e_resourcefiles_not_supported=02053_E_Resource files are not supported for this target\r
283 % The target you are compiling for doesn't support resource files. The\r
284 % only targets which can use resource files are Win32 and OS/2 (EMX) currently\r
285 scan_w_include_env_not_found=02054_W_Include environment $1 not found in environment\r
286 % The included environment variable can't be found in the environment, it'll\r
287 % be replaced by an empty string instead.\r
288 scan_e_invalid_maxfpureg_value=02055_E_Illegal value for FPU register limit\r
289 % Valid values for this directive are 0..8 and NORMAL/DEFAULT\r
290 scan_w_only_one_resourcefile_supported=02056_W_Only one resource file is supported for this target\r
291 % The target you are compiling for supports only one resource file. This is the\r
292 % case of OS/2 (EMX) currently. The first resource file found is used, the\r
293 % others are discarded.\r
294 scan_w_macro_support_turned_off=02057_W_Macro support has been turned off\r
295 % A macro declaration has been found, but macro support is currently off,\r
296 % so the declaration will be ignored. To turn macro support on compile with\r
297 % -Sm on the commandline or add \var{\{\$MACRO ON\}} in the source\r
298 % \end{description}\r
300 # Parser\r
302 # 03164 is the last used one\r
304 % \section{Parser messages}\r
305 % This section lists all parser messages. The parser takes care of the\r
306 % semantics of you language, i.e. it determines if your pascal constructs\r
307 % are correct.\r
308 % \begin{description}\r
309 parser_e_syntax_error=03000_E_Parser - Syntax Error\r
310 % An error against the Turbo Pascal language was encountered. This happens\r
311 % typically when an illegal character is found in the sources file.\r
312 parser_w_proc_far_ignored=03001_W_Procedure type FAR ignored\r
313 % This is a warning. \var{FAR} is a construct for 8 or 16 bit programs. Since\r
314 % the compile generates 32 bit programs, it ignores this directive.\r
315 parser_w_proc_near_ignored=03002_W_Procedure type NEAR ignored\r
316 % This is a warning. \var{NEAR} is a construct for 8 or 16 bit programs. Since\r
317 % the compile generates 32 bit programs, it ignores this directive.\r
318 parser_w_proc_interrupt_ignored=03003_W_Procedure type INTERRUPT ignored for not i386\r
319 % This is a warning. \var{INTERRUPT} is a i386 specific construct\r
320 % and is ignored for other processors.\r
321 parser_e_dont_nest_interrupt=03004_E_INTERRUPT procedure can't be nested\r
322 % An \var{INTERRUPT} procedure must be global.\r
323 parser_w_proc_directive_ignored=03005_W_Procedure type $1 ignored\r
324 % This is a warning. \var{REGISTER},\var{REINTRODUCE} is ignored by FPC programs for now.\r
325 % This is introduced first for Delphi compatibility.\r
326 parser_e_no_overload_for_all_procs=03006_E_Not all declarations of $1 are declared with OVERLOAD\r
327 % When you want to use overloading using the \var{OVERLOAD} directive, then\r
328 % all declarations need to have \var{OVERLOAD} specified.\r
329 parser_e_no_dll_file_specified=03007_E_No DLL File specified\r
330 % No longer in use.\r
331 parser_e_export_name_double=03008_E_Duplicate exported function name $1\r
332 % Exported function names inside a specific DLL must all be different\r
333 parser_e_export_ordinal_double=03009_E_Duplicate exported function index $1\r
334 % Exported function names inside a specific DLL must all be different\r
335 parser_e_export_invalid_index=03010_E_Invalid index for exported function\r
336 % DLL function index must be in the range \var{1..\$FFFF}\r
337 parser_w_parser_reloc_no_debug=03011_W_Relocatable DLL or executable $1 debug info does not work, disabled.\r
338 parser_w_parser_win32_debug_needs_WN=03012_W_To allow debugging for win32 code you need to disable relocation with -WN option\r
339 % Stabs info is wrong for relocatable DLL or EXES use -WN\r
340 % if you want to debug win32 executables.\r
341 parser_e_constructorname_must_be_init=03013_E_Constructor name must be INIT\r
342 % You are declaring a constructor with a name which isn't \var{init}, and the\r
343 % \var{-Ss} switch is in effect. See the \var{-Ss} switch (\seeo{Ss}).\r
344 parser_e_destructorname_must_be_done=03014_E_Destructor name must be DONE\r
345 % You are declaring a destructor with a name which isn't \var{done}, and the\r
346 % \var{-Ss} switch is in effect. See the \var{-Ss} switch (\seeo{Ss}).\r
347 parser_e_illegal_open_parameter=03015_E_Illegal open parameter\r
348 % You are trying to use the wrong type for an open parameter.\r
349 parser_e_proc_inline_not_supported=03016_E_Procedure type INLINE not supported\r
350 % You tried to compile a program with C++ style inlining, and forgot to\r
351 % specify the \var{-Si} option (\seeo{Si}). The compiler doesn't support C++\r
352 % styled inlining by default.\r
353 parser_w_priv_meth_not_virtual=03017_W_Private methods shouldn't be VIRTUAL\r
354 % You declared a method in the private part of a object (class) as\r
355 % \var{virtual}. This is not allowed. Private methods cannot be overridden\r
356 % anyway.\r
357 parser_w_constructor_should_be_public=03018_W_Constructor should be public\r
358 % Constructors must be in the 'public' part of an object (class) declaration.\r
359 parser_w_destructor_should_be_public=03019_W_Destructor should be public\r
360 % Destructors must be in the 'public' part of an object (class) declaration.\r
361 parser_n_only_one_destructor=03020_N_Class should have one destructor only\r
362 % You can declare only one destructor for a class.\r
363 parser_e_no_local_objects=03021_E_Local class definitions are not allowed\r
364 % Classes must be defined globally. They cannot be defined inside a\r
365 % procedure or function\r
366 parser_f_no_anonym_objects=03022_F_Anonym class definitions are not allowed\r
367 % An invalid object (class) declaration was encountered, i.e. an\r
368 % object or class without methods that isn't derived from another object or\r
369 % class. For example:\r
370 % \begin{verbatim}\r
371 % Type o = object\r
372 %          a : longint;\r
373 %          end;\r
374 % \end{verbatim}\r
375 % will trigger this error.\r
376 parser_object_has_no_vmt=03023_E_The object $1 has no VMT\r
377 parser_e_illegal_parameter_list=03024_E_Illegal parameter list\r
378 % You are calling a function with parameters that are of a different type than\r
379 % the declared parameters of the function.\r
380 parser_e_wrong_parameter_type=03025_E_Wrong parameter type specified for arg no. $1\r
381 % There is an error in the parameter list of the function or procedure.\r
382 % The compiler cannot determine the error more accurate than this.\r
383 parser_e_wrong_parameter_size=03026_E_Wrong amount of parameters specified\r
384 % There is an error in the parameter list of the function or procedure,\r
385 % the number of parameters is not correct.\r
386 parser_e_overloaded_no_procedure=03027_E_overloaded identifier $1 isn't a function\r
387 % The compiler encountered a symbol with the same name as an overloaded\r
388 % function, but it isn't a function it can overload.\r
389 parser_e_overloaded_have_same_parameters=03028_E_overloaded functions have the same parameter list\r
390 % You're declaring overloaded functions, but with the same parameter list.\r
391 % Overloaded function must have at least 1 different parameter in their\r
392 % declaration.\r
393 parser_e_header_dont_match_forward=03029_E_function header doesn't match the forward declaration $1\r
394 % You declared a function with same parameters but\r
395 % different result type or function modifiers.\r
396 parser_e_header_different_var_names=03030_E_function header $1 doesn't match forward : var name changes $2 => $3\r
397 % You declared the function in the \var{interface} part, or with the\r
398 % \var{forward} directive, but define it with a different parameter list.\r
399 parser_n_duplicate_enum=03031_N_Values in enumeration types have to be ascending\r
400 % \fpc allows enumeration constructions as in C. Given the following\r
401 % declaration two declarations:\r
402 % \begin{verbatim}\r
403 % type a = (A_A,A_B,A_E:=6,A_UAS:=200);\r
404 % type a = (A_A,A_B,A_E:=6,A_UAS:=4);\r
405 % \end{verbatim}\r
406 % The second declaration would produce an error. \var{A\_UAS} needs to have a\r
407 % value higher than \var{A\_E}, i.e. at least 7.\r
408 parser_n_interface_name_diff_implementation_name=03032_N_Interface and implementation names are different $1 => $2\r
409 % This note warns you if the implementation and interface names of a\r
410 % functions are different, but they have the same mangled name. This\r
411 % is important when using overloaded functions (but should produce no error).\r
412 parser_e_no_with_for_variable_in_other_segments=03033_E_With can not be used for variables in a different segment\r
413 % With stores a variable locally on the stack,\r
414 % but this is not possible if the variable belongs to another segment.\r
415 parser_e_too_much_lexlevel=03034_E_function nesting > 31\r
416 % You can nest function definitions only 31 times.\r
417 parser_e_range_check_error=03035_E_range check error while evaluating constants\r
418 % The constants are out of their allowed range.\r
419 parser_w_range_check_error=03036_W_range check error while evaluating constants\r
420 % The constants are out of their allowed range.\r
421 parser_e_double_caselabel=03037_E_duplicate case label\r
422 % You are specifying the same label 2 times in a \var{case} statement.\r
423 parser_e_case_lower_less_than_upper_bound=03038_E_Upper bound of case range is less than lower bound\r
424 % The upper bound of a \var{case} label is less than the lower bound and this\r
425 % is useless\r
426 parser_e_type_const_not_possible=03039_E_typed constants of classes are not allowed\r
427 % You cannot declare a constant of type class or object.\r
428 parser_e_no_overloaded_procvars=03040_E_functions variables of overloaded functions are not allowed\r
429 % You are trying to assign an overloaded function to a procedural variable.\r
430 % This isn't allowed.\r
431 parser_e_invalid_string_size=03041_E_string length must be a value from 1 to 255\r
432 % The length of a string in Pascal is limited to 255 characters. You are\r
433 % trying to declare a string with length lower than 1 or greater than 255\r
434 % (This is not true for \var{Longstrings} and \var{AnsiStrings}.\r
435 parser_w_use_extended_syntax_for_objects=03042_W_use extended syntax of NEW and DISPOSE for instances of objects\r
436 % If you have a pointer \var{a} to a class type, then the statement\r
437 % \var{new(a)} will not initialize the class (i.e. the constructor isn't\r
438 % called), although space will be allocated. you should issue the\r
439 % \var{new(a,init)} statement. This will allocate space, and call the\r
440 % constructor of the class.\r
441 parser_w_no_new_dispose_on_void_pointers=03043_W_use of NEW or DISPOSE for untyped pointers is meaningless\r
442 parser_e_no_new_dispose_on_void_pointers=03044_E_use of NEW or DISPOSE is not possible for untyped pointers\r
443 % You cannot use \var{new(p)} or \var{dispose(p)} if \var{p} is an untyped pointer\r
444 % because no size is associated to an untyped pointer.\r
445 % Accepted for compatibility in \var{tp} and \var{delphi} modes.\r
446 parser_e_class_id_expected=03045_E_class identifier expected\r
447 % This happens when the compiler scans a procedure declaration that contains\r
448 % a dot,\r
449 % i.e., a object or class method, but the type in front of the dot is not\r
450 % a known type.\r
451 parser_e_no_type_not_allowed_here=03046_E_type identifier not allowed here\r
452 % You cannot use a type inside an expression.\r
453 parser_e_methode_id_expected=03047_E_method identifier expected\r
454 % This identifier is not a method.\r
455 % This happens when the compiler scans a procedure declaration that contains\r
456 % a dot, i.e., a object or class method, but the procedure name is not a\r
457 % procedure of this type.\r
458 parser_e_header_dont_match_any_member=03048_E_function header doesn't match any method of this class $1\r
459 % This identifier is not a method.\r
460 % This happens when the compiler scans a procedure declaration that contains\r
461 % a dot, i.e., a object or class method, but the procedure name is not a\r
462 % procedure of this type.\r
463 parser_p_procedure_start=03049_P_procedure/function $1\r
464 % When using the \var{-vp} switch, the compiler tells you when it starts\r
465 % processing a procedure or function implementation.\r
466 parser_e_error_in_real=03050_E_Illegal floating point constant\r
467 % The compiler expects a floating point expression, and gets something else.\r
468 parser_e_fail_only_in_constructor=03051_E_FAIL can be used in constructors only\r
469 % You are using the \var{FAIL} instruction outside a constructor method.\r
470 parser_e_no_paras_for_destructor=03052_E_Destructors can't have parameters\r
471 % You are declaring a destructor with a parameter list. Destructor methods\r
472 % cannot have parameters.\r
473 parser_e_only_class_methods_via_class_ref=03053_E_Only class methods can be referred with class references\r
474 % This error occurs in a situation like the following:\r
475 % \begin{verbatim}\r
476 % Type :\r
477 %    Tclass = Class of Tobject;\r
479 % Var C : TClass;\r
481 % begin\r
482 % ...\r
483 % C.free\r
484 % \end{verbatim}\r
485 % \var{Free} is not a class method and hence cannot be called with a class\r
486 % reference.\r
487 parser_e_only_class_methods=03054_E_Only class methods can be accessed in class methods\r
488 % This is related to the previous error. You cannot call a method of an object\r
489 % from a inside a class method. The following code would produce this error:\r
490 % \begin{verbatim}\r
491 % class procedure tobject.x;\r
493 % begin\r
494 %   free\r
495 % \end{verbatim}\r
496 % Because free is a normal method of a class it cannot be called from a class\r
497 % method.\r
498 parser_e_case_mismatch=03055_E_Constant and CASE types do not match\r
499 % One of the labels is not of the same type as the case variable.\r
500 parser_e_illegal_symbol_exported=03056_E_The symbol can't be exported from a library\r
501 % You can only export procedures and functions when you write a library. You\r
502 % cannot export variables or constants.\r
503 parser_w_should_use_override=03057_W_An inherited method is hidden by $1\r
504 % A method that is declared \var{virtual} in a parent class, should be\r
505 % overridden in the descendent class with the \var{override} directive. If you\r
506 % don't specify the \var{override} directive, you will hide the parent method;\r
507 % you will not override it.\r
508 parser_e_nothing_to_be_overridden=03058_E_There is no method in an ancestor class to be overridden: $1\r
509 % You try to \var{override} a virtual method of a parent class that doesn't\r
510 % exist.\r
511 parser_e_no_procedure_to_access_property=03059_E_No member is provided to access property\r
512 % You specified no \var{read} directive for a property.\r
513 parser_w_stored_not_implemented=03060_W_Stored prorperty directive is not yet implemented\r
514 % The \var{stored} directive is not yet implemented\r
515 parser_e_ill_property_access_sym=03061_E_Illegal symbol for property access\r
516 % There is an error in the \var{read} or \var{write} directives for an array\r
517 % property. When you declare an array property, you can only access it with\r
518 % procedures and functions. The following code woud cause such an error.\r
519 % \begin{verbatim}\r
520 % tmyobject = class\r
521 %   i : integer;\r
522 %   property x [i : integer]: integer read I write i;\r
523 % \end{verbatim}\r
525 parser_e_cant_access_protected_member=03062_E_Cannot access a protected field of an object here\r
526 % Fields that are declared in a \var{protected} section of an object or class\r
527 % declaration cannot be accessed outside the module wher the object is\r
528 % defined, or outside descendent object methods.\r
529 parser_e_cant_access_private_member=03063_E_Cannot access a private field of an object here\r
530 % Fields that are declared in a \var{private} section of an object or class\r
531 % declaration cannot be accessed outside the module where the class is\r
532 % defined.\r
533 parser_w_overloaded_are_not_both_virtual=03064_W_overloaded method of virtual method should be virtual: $1\r
534 % If you declare overloaded methods in a class, then they should either all be\r
535 % virtual, or none. You shouldn't mix them.\r
536 parser_w_overloaded_are_not_both_non_virtual=03065_W_overloaded method of non-virtual method should be non-virtual: $1\r
537 % If you declare overloaded methods in a class, then they should either all be\r
538 % virtual, or none. You shouldn't mix them.\r
539 parser_e_overloaded_methodes_not_same_ret=03066_E_overloaded methods which are virtual must have the same return type: $1\r
540 % If you declare virtual overloaded methods in a class definition, they must\r
541 % have the same return type.\r
542 parser_e_dont_nest_export=03067_E_EXPORT declared functions can't be nested\r
543 % You cannot declare a function or procedure within a function or procedure\r
544 % that was declared as an export procedure.\r
545 parser_e_methods_dont_be_export=03068_E_methods can't be EXPORTed\r
546 % You cannot declare a procedure that is a method for an object as\r
547 % \var{export}ed. That is, your methods cannot be called from a C program.\r
548 parser_e_call_by_ref_without_typeconv=03069_E_call by var parameters have to match exactly: Got $1 expected $2\r
549 % When calling a function declared with \var{var} parameters, the variables in\r
550 % the function call must be of exactly the same type. There is no automatic\r
551 % type conversion.\r
552 parser_e_no_super_class=03070_E_Class isn't a parent class of the current class\r
553 % When calling inherited methods, you are trying to call a method of a strange\r
554 % class. You can only call an inherited method of a parent class.\r
555 parser_e_self_not_in_method=03071_E_SELF is only allowed in methods\r
556 % You are trying to use the \var{self} parameter outside an object's method.\r
557 % Only methods get passed the \var{self} parameters.\r
558 parser_e_generic_methods_only_in_methods=03072_E_methods can be only in other methods called direct with type identifier of the class\r
559 % A construction like \var{sometype.somemethod} is only allowed in a method.\r
560 parser_e_illegal_colon_qualifier=03073_E_Illegal use of ':'\r
561 % You are using the format \var{:} (colon) 2 times on an expression that\r
562 % is not a real expression.\r
563 parser_e_illegal_set_expr=03074_E_range check error in set constructor or duplicate set element\r
564 % The declaration of a set contains an error. Either one of the elements is\r
565 % outside the range of the set type, either two of the elements are in fact\r
566 % the same.\r
567 parser_e_pointer_to_class_expected=03075_E_Pointer to object expected\r
568 % You specified an illegal type in a \var{New} statement.\r
569 % The extended synax of \var{New} needs an  object as a parameter.\r
570 parser_e_expr_have_to_be_constructor_call=03076_E_Expression must be constructor call\r
571 % When using the extended syntax of \var{new}, you must specify the constructor\r
572 % method of the object you are trying to create. The procedure you specified\r
573 % is not a constructor.\r
574 parser_e_expr_have_to_be_destructor_call=03077_E_Expression must be destructor call\r
575 % When using the extended syntax of \var{dispose}, you must specify the\r
576 % destructor method of the object you are trying to dispose of.\r
577 % The procedure you specified is not a destructor.\r
578 parser_e_invalid_record_const=03078_E_Illegal order of record elements\r
579 % When declaring a constant record, you specified the fields in the wrong\r
580 % order.\r
581 parser_e_false_with_expr=03079_E_Expression type must be class or record type\r
582 % A \var{with} statement needs an argument that is of the type \var{record}\r
583 % or \var{class}. You are using \var{with} on an expression that is not of\r
584 % this type.\r
585 parser_e_void_function=03080_E_Procedures can't return a value\r
586 % In \fpc, you can specify a return value for a function when using\r
587 % the \var{exit} statement. This error occurs when you try to do this with a\r
588 % procedure. Procedures  cannot return a value.\r
589 parser_e_constructors_always_objects=03081_E_constructors and destructors must be methods\r
590 % You're declaring a procedure as destructor or constructor, when the\r
591 % procedure isn't a class method.\r
592 parser_e_operator_not_overloaded=03082_E_Operator is not overloaded\r
593 % You're trying to use an overloaded operator when it isn't overloaded for\r
594 % this type.\r
595 parser_e_no_such_assignment=03083_E_Impossible to overload assignment for equal types\r
596 % You can not overload assignment for types\r
597 % that the compiler considers as equal.\r
598 parser_e_overload_impossible=03084_E_Impossible operator overload\r
599 % The combination of operator, arguments and return type are\r
600 % incompatible.\r
601 parser_e_no_reraise_possible=03085_E_Re-raise isn't possible there\r
602 % You are trying to raise an exception where it isn't allowed. You can only\r
603 % raise exceptions in an \var{except} block.\r
604 parser_e_no_new_or_dispose_for_classes=03086_E_The extended syntax of new or dispose isn't allowed for a class\r
605 % You cannot generate an instance of a class with the extended syntax of\r
606 % \var{new}. The constructor must be used for that. For the same reason, you\r
607 % cannot call \var{Dispose} to de-allocate an instance of a class, the\r
608 % destructor must be used for that.\r
609 parser_e_asm_incomp_with_function_return=03087_E_Assembler incompatible with function return type\r
610 % You're trying to implement a \var{assembler} function, but the return type\r
611 % of the function doesn't allow that.\r
612 parser_e_procedure_overloading_is_off=03088_E_Procedure overloading is switched off\r
613 % When using the \var{-So} switch, procedure overloading is switched off.\r
614 % Turbo Pascal does not support function overloading.\r
615 parser_e_overload_operator_failed=03089_E_It is not possible to overload this operator (overload = instead)\r
616 % You are trying to overload an operator which cannot be overloaded.\r
617 % The following operators can be overloaded :\r
618 % \begin{verbatim}\r
619 %    +, -, *, /, =, >, <, <=, >=, is, as, in, **, :=\r
620 % \end{verbatim}\r
621 parser_e_comparative_operator_return_boolean=03090_E_Comparative operator must return a boolean value\r
622 % When overloading the \var{=} operator, the function must return a boolean\r
623 % value.\r
624 parser_e_only_virtual_methods_abstract=03091_E_Only virtual methods can be abstract\r
625 % You are declaring a method as abstract, when it isn't declared to be\r
626 % virtual.\r
627 parser_f_unsupported_feature=03092_F_Use of unsupported feature!\r
628 % You're trying to force the compiler into doing something it cannot do yet.\r
629 parser_e_mix_of_classes_and_objects=03093_E_The mix of CLASSES and OBJECTS isn't allowed\r
630 % You cannot derive \var{objects} and \var{classes} intertwined . That is,\r
631 % a class cannot have an object as parent and vice versa.\r
632 parser_w_unknown_proc_directive_ignored=03094_W_Unknown procedure directive had to be ignored: $1\r
633 % The procedure direcive you secified is unknown. Recognised procedure\r
634 % directives are \var{cdecl}, \var{stdcall}, \var{popstack}, \var{pascal}\r
635 % \var{register}, \var{export}.\r
636 parser_e_absolute_only_one_var=03095_E_absolute can only be associated to ONE variable\r
637 % You cannot specify more than one variable before the \var{absolute} directive.\r
638 % Thus, the following construct will provide this error:\r
639 % \begin{verbatim}\r
640 % Var Z : Longint;\r
641 %     X,Y : Longint absolute Z;\r
642 % \end{verbatim}\r
643 % \item [ absolute can only be associated a var or const ]\r
644 % The address of a \var{absolute} directive can only point to a variable or\r
645 % constant. Therefore, the following code will produce this error:\r
646 % \begin{verbatim}\r
647 %   Procedure X;\r
649 %  var p : longint absolute x;\r
650 % \end{verbatim}\r
652 parser_e_absolute_only_to_var_or_const=03096_E_absolute can only be associated a var or const\r
653 % The address of a \var{absolute} directive can only point to a variable or\r
654 % constant. Therefore, the following code will produce this error:\r
655 % \begin{verbatim}\r
656 %   Procedure X;\r
658 %  var p : longint absolute x;\r
659 % \end{verbatim}\r
661 parser_e_initialized_only_one_var=03097_E_Only ONE variable can be initialized\r
662 % You cannot specify more than one variable with a initial value\r
663 % in Delphi syntax.\r
664 parser_e_abstract_no_definition=03098_E_Abstract methods shouldn't have any definition (with function body)\r
665 % Abstract methods can only be declared, you cannot implement them. They\r
666 % should be overridden by a descendant class.\r
667 parser_e_overloaded_must_be_all_global=03099_E_This overloaded function can't be local (must be exported)\r
668 % You are defining a overloaded function in the implementation part of a unit,\r
669 % but there is no corresponding declaration in the interface part of the unit.\r
670 parser_w_virtual_without_constructor=03100_W_Virtual methods are used without a constructor in $1\r
671 % If you declare objects or classes that contain virtual methods, you need\r
672 % to have a constructor and destructor to initialize them. The compiler\r
673 % encountered an object or class with virtual methods that doesn't have\r
674 % a constructor/destructor pair.\r
675 parser_m_macro_defined=03101_M_Macro defined: $1\r
676 % When \var{-vm} is used, the compiler tells you when it defines macros.\r
677 parser_m_macro_undefined=03102_M_Macro undefined: $1\r
678 % When \var{-vm} is used, the compiler tells you when it undefines macros.\r
679 parser_m_macro_set_to=03103_M_Macro $1 set to $2\r
680 % When \var{-vm} is used, the compiler tells you what values macros get.\r
681 parser_i_compiling=03104_I_Compiling $1\r
682 % When you turn on information messages (\var{-vi}), the compiler tells you\r
683 % what units it is recompiling.\r
684 parser_u_parsing_interface=03105_U_Parsing interface of unit $1\r
685 % This tells you that the reading of the interface\r
686 % of the current unit starts\r
687 parser_u_parsing_implementation=03106_U_Parsing implementation of $1\r
688 % This tells you that the code reading of the implementation\r
689 % of the current unit, library or program starts\r
690 parser_d_compiling_second_time=03107_D_Compiling $1 for the second time\r
691 % When you request debug messages (\var{-vd}) the compiler tells you what\r
692 % units it recompiles for the second time.\r
693 parser_e_no_paras_allowed=03108_E_Array properties aren't allowed here\r
694 % You cannot use array properties at that point in the source.\r
695 parser_e_no_property_found_to_override=03109_E_No property found to override\r
696 % You want to overrride a property of a parent class, when there is, in fact,\r
697 % no such property in the parent class.\r
698 parser_e_only_one_default_property=03110_E_Only one default property is allowed, found inherited default property in class $1\r
699 % You specified a property as \var{Default}, but a parent class already has a\r
700 % default property, and a class can have only one default property.\r
701 parser_e_property_need_paras=03111_E_The default property must be an array property\r
702 % Only array properties of classes can be made \var{default} properties.\r
703 parser_e_constructor_cannot_be_not_virtual=03112_E_Virtual constructors are only supported in class object model\r
704 % You cannot have virtual constructors in objects. You can only have them\r
705 % in classes.\r
706 parser_e_no_default_property_available=03113_E_No default property available\r
707 % You try to access a default property of a class, but this class (or one of\r
708 % it's ancestors) doesn't have a default property.\r
709 parser_e_cant_have_published=03114_E_The class can't have a published section, use the {$M+} switch\r
710 % If you want a \var{published} section in a class definition, you must\r
711 % use the \var{\{\$M+\}} switch, whch turns on generation of type\r
712 % information.\r
713 parser_e_forward_declaration_must_be_resolved=03115_E_Forward declaration of class $1 must be resolved here to use the class as ancestor\r
714 % To be able to use an object as an ancestor object, it must be defined\r
715 % first. This error occurs in the following situation:\r
716 % \begin{verbatim}\r
717 %  Type ParentClas = Class;\r
718 %       ChildClass = Class(ParentClass)\r
719 %         ...\r
720 %       end;\r
721 % \end{verbatim}\r
722 % Where \var{ParentClass} is declared but not defined.\r
723 parser_e_no_local_operator=03116_E_Local operators not supported\r
724 % You cannot overload locally, i.e. inside procedures or function\r
725 % definitions.\r
726 parser_e_proc_dir_not_allowed_in_interface=03117_E_Procedure directive $1 not allowed in interface section\r
727 % This procedure directive is not allowed in the \var{interface} section of\r
728 % a unit. You can only use it in the \var{implementation} section.\r
729 parser_e_proc_dir_not_allowed_in_implementation=03118_E_Procedure directive $1 not allowed in implementation section\r
730 % This procedure directive is not defined in the \var{implementation} section of\r
731 % a unit. You can only use it in the \var{interface} section.\r
732 parser_e_proc_dir_not_allowed_in_procvar=03119_E_Procedure directive $1 not allowed in procvar declaration\r
733 % This procedure directive cannot be part of a procedural or function\r
734 % type declaration.\r
735 parser_e_function_already_declared_public_forward=03120_E_Function is already declared Public/Forward $1\r
736 % You will get this error if a function is defined as \var{forward} twice.\r
737 % Or it is once in the \var{interface} section, and once as a \var{forward}\r
738 % declaration in the \var{implmentation} section.\r
739 parser_e_not_external_and_export=03121_E_Can't use both EXPORT and EXTERNAL\r
740 % These two procedure directives are mutually exclusive\r
741 parser_e_name_keyword_expected=03122_E_NAME keyword expected\r
742 % The definition of an external variable needs a \var{name} clause.\r
743 parser_w_not_supported_for_inline=03123_W_$1 not yet supported inside inline procedure/function\r
744 % Inline procedures don't support this declaration.\r
745 parser_w_inlining_disabled=03124_W_Inlining disabled\r
746 % Inlining of procedures is disabled.\r
747 parser_i_writing_browser_log=03125_I_Writing Browser log $1\r
748 % When information messages are on, the compiler warns you when it\r
749 % writes the browser log (generated with the \var{\{\$Y+ \}} switch).\r
750 parser_h_maybe_deref_caret_missing=03126_H_Maybe pointer dereference is missing\r
751 % The compiler thinks that a pointer may need a dereference.\r
752 parser_f_assembler_reader_not_supported=03127_F_Selected assembler reader not supported\r
753 % The selected assembler reader (with \var{\{\$ASMMODE xxx\}} is not\r
754 % supported. The compiler can be compiled with or without support for a\r
755 % particular assembler reader.\r
756 parser_e_proc_dir_conflict=03128_E_Procedure directive $1 has conflicts with other directives\r
757 % You specified a procedure directive that conflicts with other directives.\r
758 % for instance \var{cdecl} and \var{pascal} are mutually exclusive.\r
759 parser_e_call_convention_dont_match_forward=03129_E_Calling convention doesn't match forward\r
760 % This error happens when you declare a function or procedure with\r
761 % e.g. \var{cdecl;} but omit this directive in the implementation, or vice\r
762 % versa. The calling convention is part of the function declaration, and\r
763 % must be repeated in the function definition.\r
764 parser_e_register_calling_not_supported=03130_E_Register calling (fastcall) not supported\r
765 % The \var{register} calling convention, i.e., arguments are passed in\r
766 % registers instead of on the stack is not supported. Arguments are always\r
767 % passed on the stack.\r
768 parser_e_property_cant_have_a_default_value=03131_E_Property can't have a default value\r
769 % Set properties or indexed properties cannot have a default value.\r
770 parser_e_property_default_value_must_const=03132_E_The default value of a property must be constant\r
771 % The value of a \var{default} declared property must be known at compile\r
772 % time. The value you specified is only known at run time. This happens\r
773 % .e.g. if you specify a variable name as a default value.\r
774 parser_e_cant_publish_that=03133_E_Symbol can't be published, can be only a class\r
775 % Only class type variables can be in a \var{published} section of a class\r
776 % if they are not declared as a property.\r
777 parser_e_cant_publish_that_property=03134_E_That kind of property can't be published\r
778 % Properties in a \var{published} section cannot be array properties.\r
779 % they must be moved to public sections. Properties in a \var{published}\r
780 % section must be an ordinal type, a real type, strings or sets.\r
781 parser_w_empty_import_name=03135_W_Empty import name specified\r
782 % Both index and name for the import are 0 or empty\r
783 parser_e_empty_import_name=03136_W_An import name is required\r
784 % Some targets need a name for the imported procedure or a cdecl specifier\r
785 parser_e_used_proc_name_changed=03137_E_Function internal name changed after use of function\r
786 % This is an internal error; please report any occurrences of this error\r
787 % to the \fpc team.\r
788 parser_e_division_by_zero=03138_E_Division by zero\r
789 % There is a divsion by zero encounted\r
790 parser_e_invalid_float_operation=03139_E_Invalid floating point operation\r
791 % An operation on two real type values produced an overflow or a division\r
792 % by zero.\r
793 parser_e_array_lower_less_than_upper_bound=03140_E_Upper bound of range is less than lower bound\r
794 % The upper bound of a \var{case} label is less than the lower bound and this\r
795 % is not possible\r
796 parser_w_string_too_long=03141_W_string "$1" is longer than $2\r
797 % The size of the constant string is larger than the size you specified in\r
798 % string type definition\r
799 parser_e_string_larger_array=03142_E_string length is larger than array of char length\r
800 % The size of the constant string is larger than the size you specified in\r
801 % the array[x..y] of char definition\r
802 parser_e_ill_msg_expr=03143_E_Illegal expression after message directive\r
803 % \fpc supports only integer or string values as message constants\r
804 parser_e_ill_msg_param=03144_E_Message handlers can take only one call by ref. parameter\r
805 % A method declared with the \var{message}-directive as message handler\r
806 % can take only one parameter which must be declared as call by reference\r
807 % Parameters are declared as call by reference using the \var{var}-directive\r
808 parser_e_duplicate_message_label=03145_E_Duplicate message label: $1\r
809 % A label for a message is used twice in one object/class\r
810 parser_e_self_in_non_message_handler=03146_E_Self can be only an explicit parameter in message handlers\r
811 % The self parameter can be passed only explicitly in a method which\r
812 % is declared as message method handler.\r
813 parser_e_threadvars_only_sg=03147_E_Threadvars can be only static or global\r
814 % Threadvars must be static or global, you can't declare a thread\r
815 % local to a procedure. Local variables are always local to a thread,\r
816 % because every thread has it's own stack and local variables\r
817 % are stored on the stack\r
818 parser_f_direct_assembler_not_allowed=03148_F_Direct assembler not supported for binary output format\r
819 % You can't use direct assembler when using a binary writer, choose an\r
820 % other outputformat or use an other assembler reader\r
821 parser_w_no_objpas_use_mode=03149_W_Don't load OBJPAS unit manual, use mode switch instead\r
822 % You're trying to load the ObjPas unit manual from a uses clause. This is\r
823 % not a good idea to do, you can better use the \var{\{\$mode objfpc\}} or\r
824 % \var{\{\$mode delphi\}}\r
825 % directives which load the unit automaticly\r
826 parser_e_no_object_override=03150_E_OVERRIDE can't be used in objects\r
827 % Override isn't support for objects, use VIRTUAL instead to override\r
828 % a method of an anchestor object\r
829 parser_e_cant_use_inittable_here=03151_E_Data types which requires initialization/finalization can't be used in variant records\r
830 % Some data type (e.g. \var{ansistring}) needs initialization/finalization\r
831 % code which is implicitly generated by the compiler. Such data types\r
832 % can't be used in the variant part of a record.\r
833 parser_e_resourcestring_only_sg=03152_E_Resourcestrings can be only static or global\r
834 % Resourcestring can not be declared local, only global or using the static\r
835 % directive.\r
836 parser_e_exit_with_argument_not__possible=03153_E_Exit with argument can't be used here\r
837 % an exit statement with an argument for the return value can't be used here, this\r
838 % can happen e.g. in \var{try..except} or \var{try..finally} blocks\r
839 parser_e_stored_property_must_be_boolean=03154_E_The type of the storage symbol must be boolean\r
840 % If you specify a storage symbol in a property declaration, it must be of\r
841 % the type boolean\r
842 parser_e_ill_property_storage_sym=03155_E_This symbol isn't allowed as storage symbol\r
843 % You can't use this type of symbol as storage specifier in property\r
844 % declaration. You can use only methods with the result type boolean,\r
845 % boolean class fields or boolean constants\r
846 parser_e_only_publishable_classes_can__be_published=03156_E_Only class which are compiled in $M+ mode can be published\r
847 % In the published section of a class can be only class as fields used which\r
848 % are compiled in \var{\{\$M+\}} or which are derived from such a class. Normally\r
849 % such a class should be derived from TPersitent\r
850 parser_e_proc_directive_expected=03157_E_Procedure directive expected\r
851 % When declaring a procedure in a const block you used a ; after the\r
852 % procedure declaration after which a procedure directive must follow.\r
853 % Correct declarations are:\r
854 % \begin{verbatim}\r
855 % const\r
856 %   p : procedure;stdcall=nil;\r
857 %   p : procedure stdcall=nil;\r
858 % \end{verbatim}\r
859 parser_e_invalid_property_index_value=03158_E_The value for a property index must be of an ordinal type\r
860 % The value you use to index a property must be of an ordinal type, for\r
861 % example an integer or enumerated type.\r
862 parser_e_procname_to_short_for_export=03159_E_Procedure name to short to be exported\r
863 % The length of the procedure/function name must be at least 2 characters\r
864 % long. This is because of a bug in dlltool which doesn't parse the .def\r
865 % file correct with a name of length 1.\r
866 parser_e_dlltool_unit_var_problem=03160_E_No DEFFILE entry can be generated for unit global vars\r
867 parser_e_dlltool_unit_var_problem2=03161_E_Compile without -WD option\r
868 % You need to compile this file without the -WD switch on the\r
869 % commandline\r
870 parser_f_need_objfpc_or_delphi_mode=03162_F_You need ObjFpc (-S2) or Delphi (-Sd) mode to compile this module\r
871 % You need to use \var{\{\$mode objfpc\}} or \var{\{\$mode delphi\}} to compile this file.\r
872 % Or use the equivalent commandline switches -S2 or -Sd.\r
873 parser_e_no_export_with_index_for_target=03163_E_Can't export with index under $1\r
874 % Exporting of functions or procedures with a specified index is not\r
875 % support on all targets. The only platforms currently supporting\r
876 % export with index are OS/2 and Win32.\r
877 parser_e_no_export_of_variables_for_target=03164_E_Exporting of variables is not supported under $1\r
878 % Exporting of variables is not support on all targets. The only platform\r
879 % currently supporting export of variables is Win32.\r
880 parser_e_type_cant_be_used_in_array_index=03165_E_Type "$1" can't be used as array index type\r
881 % Types like DWord or Int64 aren't allowed as array index type\r
882 % \end{description}\r
884 # Type Checking\r
886 # 04033 is the last one used\r
888 % \section{Type checking errors}\r
889 % This section lists all errors that can occur when type checking is\r
890 % performed.\r
891 % \begin{description}\r
892 type_e_mismatch=04000_E_Type mismatch\r
893 % This can happen in many cases:\r
894 % \begin{itemize}\r
895 % \item The variable you're assigning to is of a different type than the\r
896 % expression in the assignment.\r
897 % \item You are calling a function or procedure with parameters that are\r
898 % incompatible with the parameters in the function or procedure definition.\r
899 % \end{itemize}\r
900 type_e_incompatible_types=04001_E_Incompatible types: got "$1" expected "$2"\r
901 % There is no conversion possible between the two types\r
902 % Another possiblity is that they are declared in different\r
903 % declarations:\r
904 % \begin{verbatim}\r
905 % Var\r
906 %    A1 : Array[1..10] Of Integer;\r
907 %    A2 : Array[1..10] Of Integer;\r
909 % Begin\r
910 %    A1:=A2; { This statement gives also this error, it\r
911 %              is due the strict type checking of pascal }\r
912 % End.\r
913 % \end{verbatim}\r
914 type_e_not_equal_types=04002_E_Type mismatch between $1 and $2\r
915 % The types are not equal\r
916 type_e_type_id_expected=04003_E_Type identifier expected\r
917 % The identifier is not a type, or you forgot to supply a type identifier.\r
918 type_e_variable_id_expected=04004_E_Variable identifier expected\r
919 % This happens when you pass a constant to a \var{Inc} var or \var{Dec}\r
920 % procedure. You can only pass variables as arguments to these functions.\r
921 type_e_integer_expr_expected=04005_E_Integer expression expected, but got "$1"\r
922 % The compiler expects an expression of type integer, but gets a different\r
923 % type.\r
924 type_e_boolean_expr_expected=04006_E_Boolean expression expected, but got "$1"\r
925 % The expression must be a boolean type, it should be return true or\r
926 % false.\r
927 type_e_ordinal_expr_expected=04007_E_Ordinal expression expected\r
928 % The expression must be of ordinal type, i.e., maximum a \var{Longint}.\r
929 % This happens, for instance, when you specify a second argument\r
930 % to \var{Inc} or \var{Dec} that doesn't evaluate to an ordinal value.\r
931 type_e_pointer_type_expected=04008_E_pointer type expected, but got "$1"\r
932 % The variable or expression isn't of the type \var{pointer}. This\r
933 % happens when you pass a variable that isn't a pointer to \var{New}\r
934 % or \var{Dispose}.\r
935 type_e_class_type_expected=04009_E_class type expected, but got "$1"\r
936 % The variable of expression isn't of the type \var{class}. This happens\r
937 % typically when\r
938 % \begin{enumerate}\r
939 % \item The parent class in a class declaration isn't a class.\r
940 % \item An exception handler (\var{On}) contains a type identifier that\r
941 % isn't a class.\r
942 % \end{enumerate}\r
943 type_e_varid_or_typeid_expected=04010_E_Variable or type indentifier expected\r
944 % The argument to the \var{High} or \var{Low} function is not a variable\r
945 % nor a type identifier.\r
946 type_e_cant_eval_constant_expr=04011_E_Can't evaluate constant expression\r
947 % No longer in use.\r
948 type_e_set_element_are_not_comp=04012_E_Set elements are not compatible\r
949 % You are trying to make an operation on two sets, when the set element types\r
950 % are not the same. The base type of a set must be the same when taking the\r
951 % union\r
952 type_e_set_operation_unknown=04013_E_Operation not implemented for sets\r
953 % several binary operations are not defined for sets\r
954 % like div mod ** (also >= <= for now)\r
955 type_w_convert_real_2_comp=04014_W_Automatic type conversion from floating type to COMP which is an integer type\r
956 % An implicit type conversion from a real type to a \var{comp} is\r
957 % encountered. Since \var{Comp} is a 64 bit integer type, this may indicate\r
958 % an error.\r
959 type_h_use_div_for_int=04015_H_use DIV instead to get an integer result\r
960 % When hints are on, then an integer division with the '/' operator will\r
961 % procuce this message, because the result will then be of type real\r
962 type_e_strict_var_string_violation=04016_E_string types doesn't match, because of $V+ mode\r
963 % When compiling in \var{\{\$V+\}} mode, the string you pass as a parameter\r
964 % should be of the exact same type as the declared parameter of the procedure.\r
965 type_e_succ_and_pred_enums_with_assign_not_possible=04017_E_succ or pred on enums with assignments not possible\r
966 % When you declared an enumeration type which has assignments in it, as in C,\r
967 % like in the following:\r
968 % \begin{verbatim}\r
969 %   Tenum = (a,b,e:=5);\r
970 % \end{verbatim}\r
971 % you cannot use the \var{Succ} or \var{Pred} functions on them.\r
972 type_e_cant_read_write_type=04018_E_Can't read or write variables of this type\r
973 % You are trying to \var{read} or \var{write} a variable from or to a\r
974 % file of type text, which doesn't support that. Only integer types,\r
975 % booleans, reals, pchars and strings can be read from/written to a text file.\r
976 type_e_no_readln_writeln_for_typed_file=04019_E_Can't use readln or writeln on typed file\r
977 % \var{readln} and \var{writeln} are only allowed for text files.\r
978 type_e_no_read_write_for_untyped_file=04020_E_Can't use read or write on untyped file.\r
979 % \var{read} and \var{write} are only allowed for text or typed files.\r
980 type_e_typeconflict_in_set=04021_E_Type conflict between set elements\r
981 % There is at least one set element which is of the wrong type, i.e. not of\r
982 % the set type.\r
983 type_w_maybe_wrong_hi_lo=04022_W_lo/hi(dword/qword) returns the upper/lower word/dword\r
984 % \fpc supports an overloaded version of \var{lo/hi} for \var{longint/dword/int64/qword}\r
985 % which returns the lower/upper word/dword of the argument. TP always uses\r
986 % a 16 bit \var{lo/hi} which returns always bits 0..7 for \var{lo} and the\r
987 % bits 8..15 for \var{hi}. If you want the TP behavior you have\r
988 % to type cast the argument to \var{word/integer}\r
989 type_e_integer_or_real_expr_expected=04023_E_Integer or real expression expected\r
990 % The first argument to \var{str} must a real or integer type.\r
991 type_e_wrong_type_in_array_constructor=04024_E_Wrong type $1 in array constructor\r
992 % You are trying to use a type in an array constructor which is not\r
993 % allowed.\r
994 type_e_wrong_parameter_type=04025_E_Incompatible type for arg no. $1: Got $2, expected $3\r
995 % You are trying to pass an invalid type for the specified parameter.\r
996 type_e_no_method_and_procedure_not_compatible=04026_E_Method (variable) and Procedure (variable) are not compatible\r
997 % You can't assign a method to a procedure variable or a procedure to a\r
998 % method pointer.\r
999 type_e_wrong_math_argument=04027_E_Illegal constant passed to internal math function\r
1000 % The constant argument passed to a ln or sqrt function is out of\r
1001 % the definition range of these functions.\r
1002 type_e_no_addr_of_constant=04028_E_Can't get the address of constants\r
1003 % It's not possible to get the address of a constant, because they\r
1004 % aren't stored in memory, you can try making it a typed constant.\r
1005 type_e_argument_cant_be_assigned=04029_E_Argument can't be assigned to\r
1006 % Only expressions which can be on the left side of an\r
1007 % assignment can be passed as call by reference argument\r
1008 % Remark: Properties can be only\r
1009 % used on the left side of an assignment, but they can't be used as arguments\r
1010 type_e_cannot_local_proc_to_procvar=04030_E_Can't assign local procedure/function to procedure variable\r
1011 % It's not allowed to assign a local procedure/function to a\r
1012 % procedure variable, because the calling of local procedure/function is\r
1013 % different. You can only assign local procedure/function to a void pointer.\r
1014 type_e_no_assign_to_addr=04031_E_Can't assign values to an address\r
1015 % It's not allowed to assign a value to an address of a variable, constant,\r
1016 % procedure or function. You can try compiling with -So if the identifier\r
1017 % is a procedure variable.\r
1018 type_e_no_assign_to_const=04032_E_Can't assign values to const variable\r
1019 % It's not allowed to assign a value to a variable which is declared\r
1020 % as a const. This is normally a parameter declared as const, to allow\r
1021 % changing make the parameter value or var.\r
1022 type_e_array_required=04033_E_Array type required\r
1023 % If you are accessing a variable using an index '[<x>]' then\r
1024 % the type must be an array. In FPC mode also a pointer is allowed.\r
1025 type_w_mixed_signed_unsigned=04034_W_Mixing signed expressions and cardinals gives a 64bit result\r
1026 % If you divide (or calculate the modulus of) a signed expression by a cardinal (or vice versa),\r
1027 % or if you have overflow and/or range checking turned on and use an arithmetical\r
1028 % expression (+, -, *, div, mod) in which both signed numbers and cardinals appear,\r
1029 % then everything has to be evaluated in 64bit which is slower than normal\r
1030 % 32bit arithmetics. You can avoid this by typecasting one operand so it\r
1031 % matches the resulttype of the other one.\r
1032 type_w_mixed_signed_unsigned2=04035_W_Mixing signed expressions and cardinals here may cause a range check error\r
1033 % If you use a binary operator (and, or, xor) and one of\r
1034 % the operands is a cardinal while the other one is a signed expression, then,\r
1035 % if range checking is turned on, you may get a range check error because in\r
1036 % such a case both operands are converted to cardinal before the operation is\r
1037 % carried out. You can avoid this by typecasting one operand so it\r
1038 % matches the resulttype of the other one.\r
1039 % \end{description}\r
1042 # Symtable\r
1044 # 05040 is the last one used\r
1046 % \section{Symbol handling}\r
1047 % This section lists all the messages that concern the handling of symbols.\r
1048 % This means all things that have to do with procedure and variable names.\r
1049 % \begin{description}\r
1050 sym_e_id_not_found=05000_E_Identifier not found $1\r
1051 % The compiler doesn't know this symbol. Usually happens when you misspel\r
1052 % the name of a variable or procedure, or when you forgot to declare a\r
1053 % variable.\r
1054 sym_f_internal_error_in_symtablestack=05001_F_Internal Error in SymTableStack()\r
1055 % An internal error occurred in the compiler; If you encounter such an error,\r
1056 % please contact the developers and try to provide  an exact description of\r
1057 % the circumstances in which the error occurs.\r
1058 sym_e_duplicate_id=05002_E_Duplicate identifier $1\r
1059 % The identifier was already declared in the current scope.\r
1060 sym_h_duplicate_id_where=05003_H_Identifier already defined in $1 at line $2\r
1061 % The identifier was already declared in a previous scope.\r
1062 sym_e_unknown_id=05004_E_Unknown identifier $1\r
1063 % The identifier encountered hasn't been declared, or is used outside the\r
1064 % scope where it's defined.\r
1065 sym_e_forward_not_resolved=05005_E_Forward declaration not solved $1\r
1066 % This can happen in two cases:\r
1067 % \begin{itemize}\r
1068 % \item This happens when you declare a function (in the \var{interface} part, or\r
1069 % with a \var{forward} directive, but do not implement it.\r
1070 % \item You reference a type which isn't declared in the current \var{type}\r
1071 % block.\r
1072 % \end{itemize}\r
1073 sym_f_id_already_typed=05006_F_Identifier type already defined as type\r
1074 % You are trying to redefine a type.\r
1075 sym_e_error_in_type_def=05007_E_Error in type definition\r
1076 % There is an error in your definition of a new array type:\r
1077 % \item One of the range delimiters in an array declaration is erroneous.\r
1078 % For example, \var{Array [1..1.25]} will trigger this error.\r
1079 sym_e_type_id_not_defined=05008_E_Type identifier not defined\r
1080 % The type identifier has not been defined yet.\r
1081 sym_e_forward_type_not_resolved=05009_E_Forward type not resolved $1\r
1082 % A symbol was forward defined, but no declaration was encountered.\r
1083 sym_e_only_static_in_static=05010_E_Only static variables can be used in static methods or outside methods\r
1084 % A static method of an object can only access static variables.\r
1085 sym_e_invalid_call_tvarsymmangledname=05011_E_Invalid call to tvarsym.mangledname()\r
1086 % An internal error occurred in the compiler; If you encounter such an error,\r
1087 % please contact the developers and try to provide  an exact description of\r
1088 % the circumstances in which the error occurs.\r
1089 sym_f_type_must_be_rec_or_class=05012_F_record or class type expected\r
1090 % The variable or expression isn't of the type \var{record} or \var{class}.\r
1091 sym_e_no_instance_of_abstract_object=05013_E_Instances of classes or objects with an abstract method are not allowed\r
1092 % You are trying to generate an instance of a class which has an abstract\r
1093 % method that wasn't overridden.\r
1094 sym_w_label_not_defined=05014_W_Label not defined $1\r
1095 % A label was declared, but not defined.\r
1096 sym_e_label_used_and_not_defined=05015_E_Label used but not defined $1\r
1097 % A label was declared and used, but not defined.\r
1098 sym_e_ill_label_decl=05016_E_Illegal label declaration\r
1099 % This error should never happen; it occurs if a label is defined outside a\r
1100 % procedure or function.\r
1101 sym_e_goto_and_label_not_supported=05017_E_GOTO and LABEL are not supported (use switch -Sg)\r
1102 % You must compile a program which has \var{label}s and \var{goto} statements\r
1103 % with the  \var{-Sg} switch. By default, \var{label} and \var{goto} aren't\r
1104 % supported.\r
1105 sym_e_label_not_found=05018_E_Label not found\r
1106 % A \var{goto label} was encountered, but the label isn't declared.\r
1107 sym_e_id_is_no_label_id=05019_E_identifier isn't a label\r
1108 % The identifier specified after the \var{goto} isn't of type label.\r
1109 sym_e_label_already_defined=05020_E_label already defined\r
1110 % You are defining a label twice. You can define a label only once.\r
1111 sym_e_ill_type_decl_set=05021_E_illegal type declaration of set elements\r
1112 % The declaration of a set contains an invalid type definition.\r
1113 sym_e_class_forward_not_resolved=05022_E_Forward class definition not resolved $1\r
1114 % You declared a class, but you didn't implement it.\r
1115 sym_n_unit_not_used=05023_H_Unit $1 not used in $2\r
1116 % The unit referenced in the \var{uses} clause is not used.\r
1117 sym_h_para_identifier_not_used=05024_H_Parameter $1 not used\r
1118 % This is a warning. The identifier was declared (locally or globally) but\r
1119 % wasn't used (locally or globally).\r
1120 sym_n_local_identifier_not_used=05025_N_Local variable $1 not used\r
1121 % You have declared, but not used a variable in a procedure or function\r
1122 % implementation.\r
1123 sym_h_para_identifier_only_set=05026_H_Value parameter $1 is assigned but never used\r
1124 % This is a warning. The identifier was declared (locally or globally)\r
1125 % set but not used (locally or globally).\r
1126 sym_n_local_identifier_only_set=05027_N_Local variable $1 is assigned but never used\r
1127 % The variable in a procedure or function\r
1128 % implementation is declared, set but never used.\r
1129 sym_h_local_symbol_not_used=05028_H_Local $1 $2 is not used\r
1130 % A local symbol is never used.\r
1131 sym_n_private_identifier_not_used=05029_N_Private field $1.$2 is never used\r
1132 sym_n_private_identifier_only_set=05030_N_Private field $1.$2 is assigned but never used\r
1133 sym_n_private_method_not_used=05031_N_Private method $1.$2 never used\r
1134 sym_e_set_expected=05032_E_Set type expected\r
1135 % The variable or expression isn't of type \var{set}. This happens in an\r
1136 % \var{in} statement.\r
1137 sym_w_function_result_not_set=05033_W_Function result does not seem to be set\r
1138 % You can get this warning if the compiler thinks that a function return\r
1139 % value is not set. This will not be displayed for assembler procedures,\r
1140 % or procedures that contain assembler blocks.\r
1141 sym_w_wrong_C_pack=05034_W_Type $1 is not aligned correctly in current record for C\r
1142 % Arrays with sizes not multiples of 4 will be wrongly aligned\r
1143 % for C structures.\r
1144 sym_e_illegal_field=05035_E_Unknown record field identifier $1\r
1145 % The field doesn't exist in the record definition.\r
1146 sym_n_uninitialized_local_variable=05036_W_Local variable $1 does not seem to be initialized\r
1147 sym_n_uninitialized_variable=05037_W_Variable $1 does not seem to be initialized\r
1148 % These messages are displayed if the compiler thinks that a variable will\r
1149 % be used (i.e. appears in the right-hand-side of an expression) when it\r
1150 % wasn't initialized first (i.e. appeared in the left-hand side of an\r
1151 % assigment)\r
1152 sym_e_id_no_member=05038_E_identifier idents no member $1\r
1153 % When using the extended syntax of \var{new}, you must specify the constructor\r
1154 % method of the class you are trying to create. The procedure you specified\r
1155 % does not exist.\r
1156 sym_b_param_list=05039_B_Found declaration: $1\r
1157 % You get this when you use the \var{-vb} switch. In case an overloaded\r
1158 % procedure is not found, then all candidate overloaded procedures are\r
1159 % listed, with their parameter lists.\r
1160 sym_e_segment_too_large=05040_E_Data segment too large (max. 2GB)\r
1161 % You get this when you declare an array whose size exceeds the 2GB limit.\r
1162 % \end{description}\r
1164 # Codegenerator\r
1166 # 06040 is the last one used\r
1168 % \section{Code generator messages}\r
1169 % This section lists all messages that can be displayed if the code\r
1170 % generator encounters an error condition.\r
1171 % \begin{description}\r
1172 cg_e_break_not_allowed=06000_E_BREAK not allowed\r
1173 % You're trying to use \var{break} outside a loop construction.\r
1174 cg_e_continue_not_allowed=06001_E_CONTINUE not allowed\r
1175 % You're trying to use \var{continue} outside a loop construction.\r
1176 cg_e_too_complex_expr=06002_E_Expression too complicated - FPU stack overflow\r
1177 % Your expression is too long for the compiler. You should try dividing the\r
1178 % construct over multiple assignments.\r
1179 cg_e_illegal_expression=06003_E_Illegal expression\r
1180 % This can occur under many circumstances. Mostly when trying to evaluate\r
1181 % constant expressions.\r
1182 cg_e_invalid_integer=06004_E_Invalid integer expression\r
1183 % You made an expression which isn't an integer, and the compiler expects the\r
1184 % result to be an integer.\r
1185 cg_e_invalid_qualifier=06005_E_Illegal qualifier\r
1186 % One of the following is happening :\r
1187 % \begin{itemize}\r
1188 % \item You're trying to access a field of a variable that is not a record.\r
1189 % \item You're indexing a variable that is not an array.\r
1190 % \item You're dereferencing a variable that is not a pointer.\r
1191 % \end{itemize}\r
1192 cg_e_upper_lower_than_lower=06006_E_High range limit < low range limit\r
1193 % You are declaring a subrange, and the lower limit is higher than the high\r
1194 % limit of the range.\r
1195 cg_e_illegal_count_var=06007_E_Illegal counter variable\r
1196 % The type of a \var{for} loop variable must be an ordinal type.\r
1197 % Loop variables cannot be reals or strings.\r
1198 cg_e_cant_choose_overload_function=06008_E_Can't determine which overloaded function to call\r
1199 % You're calling overloaded functions with a parameter that doesn't correspond\r
1200 % to any of the declared function parameter lists. e.g. when you have declared\r
1201 % a function with parameters \var{word} and \var{longint}, and then you call\r
1202 % it with a parameter which is of type \var{integer}.\r
1203 cg_e_parasize_too_big=06009_E_Parameter list size exceeds 65535 bytes\r
1204 % The I386 processor limits the parameter list to 65535 bytes (the \var{RET}\r
1205 % instruction causes this)\r
1206 cg_e_illegal_type_conversion=06010_E_Illegal type conversion\r
1207 % When doing a type-cast, you must take care that the sizes of the variable and\r
1208 % the destination type are the same.\r
1209 cg_d_pointer_to_longint_conv_not_portable=06011_D_Conversion between ordinals and pointers is not portable across platforms\r
1210 % If you typecast a pointer to a longint, this code will not compile\r
1211 % on a machine using 64bit for pointer storage.\r
1212 cg_e_file_must_call_by_reference=06012_E_File types must be var parameters\r
1213 % You cannot specify files as value parameters, i.e. they must always be\r
1214 % declared \var{var} parameters.\r
1215 cg_e_cant_use_far_pointer_there=06013_E_The use of a far pointer isn't allowed there\r
1216 % Free Pascal doesn't support far pointers, so you cannot take the address of\r
1217 % an expression which has a far reference as a result. The \var{mem} construct\r
1218 % has a far reference as a result, so the following code will produce this\r
1219 % error:\r
1220 % \begin{verbatim}\r
1221 % var p : pointer;\r
1222 % ...\r
1223 % p:=@mem[a000:000];\r
1224 % \end{verbatim}\r
1225 cg_e_var_must_be_reference=06014_E_illegal call by reference parameters\r
1226 % You are trying to pass a constant or an expression to a procedure that\r
1227 % requires a \var{var} parameter. Only variables can be passed as a \var{var}\r
1228 % parameter.\r
1229 cg_e_dont_call_exported_direct=06015_E_EXPORT declared functions can't be called\r
1230 % No longer in use.\r
1231 cg_w_member_cd_call_from_method=06016_W_Possible illegal call of constructor or destructor (doesn't match to this context)\r
1232 % No longer in use.\r
1233 cg_n_inefficient_code=06017_N_Inefficient code\r
1234 % You construction seems dubious to the compiler.\r
1235 cg_w_unreachable_code=06018_W_unreachable code\r
1236 % You specified a loop which will never be executed. Example:\r
1237 % \begin{verbatim}\r
1238 % while false do\r
1239 %   begin\r
1240 %   {.. code ...}\r
1241 %   end;\r
1242 % \end{verbatim}\r
1243 cg_e_stackframe_with_esp=06019_E_procedure call with stackframe ESP/SP\r
1244 % The compiler encountered a procedure  or function call inside a\r
1245 % procedure that uses a \var{ESP/SP} stackframe. Normally, when a call is\r
1246 % done the procedure needs a \var{EBP} stackframe.\r
1247 cg_e_cant_call_abstract_method=06020_E_Abstract methods can't be called directly\r
1248 % You cannot call an abstract method directy, instead you must call a\r
1249 % overriding child method, because an abstract method isn't implemented.\r
1250 cg_f_internal_error_in_getfloatreg=06021_F_Internal Error in getfloatreg(), allocation failure\r
1251 % An internal error occurred in the compiler; If you encounter such an error,\r
1252 % please contact the developers and try to provide  an exact description of\r
1253 % the circumstances in which the error occurs.\r
1254 cg_f_unknown_float_type=06022_F_Unknown float type\r
1255 % The compiler cannot determine the kind of float that occurs in an expression.\r
1256 cg_f_secondvecn_base_defined_twice=06023_F_SecondVecn() base defined twice\r
1257 % An internal error occurred in the compiler; If you encounter such an error,\r
1258 % please contact the developers and try to provide  an exact description of\r
1259 % the circumstances in which the error occurs.\r
1260 cg_f_extended_cg68k_not_supported=06024_F_Extended cg68k not supported\r
1261 % The \var{extended} type is not supported on the m68k platform.\r
1262 cg_f_32bit_not_supported_in_68000=06025_F_32-bit unsigned not supported in MC68000 mode\r
1263 % The cardinal is not supported on the m68k platform.\r
1264 cg_f_internal_error_in_secondinline=06026_F_Internal Error in secondinline()\r
1265 % An internal error occurred in the compiler; If you encounter such an error,\r
1266 % please contact the developers and try to provide  an exact description of\r
1267 % the circumstances in which the error occurs.\r
1268 cg_d_register_weight=06027_D_Register $1 weight $2 $3\r
1269 % Debugging message. Shown when the compiler considers a variable for\r
1270 % keeping in the registers.\r
1271 cg_e_stacklimit_in_local_routine=06028_E_Stack limit excedeed in local routine\r
1272 % Your code requires a too big stack. Some operating systems pose limits\r
1273 % on the stack size. You should use less variables or try ro put large\r
1274 % variables on the heap.\r
1275 cg_d_stackframe_omited=06029_D_Stack frame is omitted\r
1276 % Some procedure/functions do not need a complete stack-frame, so it is omitted.\r
1277 % This message will be displayed when the {-vd} switch is used.\r
1278 cg_e_unable_inline_object_methods=06031_E_Object or class methods can't be inline.\r
1279 % You cannot have inlined object methods.\r
1280 cg_e_unable_inline_procvar=06032_E_Procvar calls can't be inline.\r
1281 % A procedure with a procedural variable call cannot be inlined.\r
1282 cg_e_no_code_for_inline_stored=06033_E_No code for inline procedure stored\r
1283 % The compiler couldn't store code for the inline procedure.\r
1284 cg_e_no_call_to_interrupt=06034_E_Direct call of interrupt procedure $1 is not possible\r
1285 % You can not call an interrupt procedure directly from FPC code\r
1286 cg_e_can_access_element_zero=06035_E_Element zero of an ansi/wide- or longstring can't be accessed, use (set)length instead\r
1287 % You should use \var{setlength} to set the length of an ansi/wide/longstring\r
1288 % and \var{length} to get the length of such kinf of string\r
1289 cg_e_include_not_implemented=06036_E_Include and exclude not implemented in this case\r
1290 % \var{include} and \var{exclude} are only partially\r
1291 % implemented for \var{i386} processors\r
1292 % and not at all for \var{m68k} processors.\r
1293 cg_e_cannot_call_cons_dest_inside_with=06037_E_Constructors or destructors can not be called inside a 'with' clause\r
1294 % Inside a \var{With} clause you cannot call a constructor or destructor for the\r
1295 % object you have in the \var{with} clause.\r
1296 cg_e_cannot_call_message_direct=06038_E_Cannot call message handler method directly\r
1297 % A message method handler method can't be called directly if it contains an\r
1298 % explicit self argument\r
1299 cg_e_goto_inout_of_exception_block=06039_E_Jump in or outside of an exception block\r
1300 % It isn't allowed to jump in or outside of an exception block like \var{try..finally..end;}:\r
1301 % \begin{verbatim}\r
1302 % label 1;\r
1304 % ...\r
1306 % try\r
1307 %    if not(final) then\r
1308 %      goto 1;   // this line will cause an error\r
1309 % finally\r
1310 %   ...\r
1311 % end;\r
1312 % 1:\r
1313 % ...\r
1314 % \end{verbatim}\r
1315 cg_e_control_flow_outside_finally=06040_E_Control flow statements aren't allowed in a finally block\r
1316 % It isn't allowed to use the control flow statements \var{break},\r
1317 % \var{continue} and \var{exit}\r
1318 % inside a finally statement. The following example shows the problem:\r
1319 % \begin{verbatim}\r
1320 % ...\r
1321 %   try\r
1322 %      p;\r
1323 %   finally\r
1324 %      ...\r
1325 %      exit;  // This exit ISN'T allowed\r
1326 %   end;\r
1327 % ...\r
1329 % \end{verbatim}\r
1330 % If the procedure \var{p} raises an exception the finally block is\r
1331 % executed. If the execution reaches the exit, it's unclear what to do:\r
1332 % exiting the procedure or searching for another exception handler\r
1333 % \end{description}\r
1334 # EndOfTeX\r
1337 # Assembler reader\r
1339 # 07085 is the last used one\r
1341 asmr_d_start_reading=07000_D_Starting $1 styled assembler parsing\r
1342 % This informs you that an assembler block is being parsed\r
1343 asmr_d_finish_reading=07001_D_Finished $1 styled assembler parsing\r
1344 % This informs you that an assembler block has finished.\r
1345 asmr_e_none_label_contain_at=07002_E_Non-label pattern contains @\r
1346 % A identifier which isn't a label can't contain a @.\r
1347 asmr_w_override_op_not_supported=07003_W_Override operator not supported\r
1348 % The Override operator is not supported\r
1349 asmr_e_building_record_offset=07004_E_Error building record offset\r
1350 % There has an error occured while building the offset of a record/object\r
1351 % structure, this can happend when there is no field specified at all or\r
1352 % an unknown field identifier is used.\r
1353 asmr_e_offset_without_identifier=07005_E_OFFSET used without identifier\r
1354 % You can only use OFFSET with an identifier. Other syntaxes aren't\r
1355 % supported\r
1356 asmr_e_type_without_identifier=07006_E_TYPE used without identifier\r
1357 % You can only use TYPE with an identifier. Other syntaxes aren't\r
1358 % supported\r
1359 asmr_e_no_local_or_para_allowed=07007_E_Cannot use local variable or parameters here\r
1360 % You can't use a local variable or parameter here, mostly because the\r
1361 % addressing of locals and parameters is done using the %ebp register so the\r
1362 % address can't be get directly.\r
1363 asmr_e_need_offset=07008_E_need to use OFFSET here\r
1364 % You need to use OFFSET <id> here to get the address of the identifier.\r
1365 asmr_e_need_dollar=07009_E_need to use $ here\r
1366 % You need to use $<id> here to get the address of the identifier.\r
1367 asmr_e_cant_have_multiple_relocatable_symbols=07010_E_Cannot use multiple relocatable symbols\r
1368 % You can't have more than one relocatable symbol (variable/typed constant)\r
1369 % in one argument.\r
1370 asmr_e_only_add_relocatable_symbol=07011_E_Relocatable symbol can only be added\r
1371 % Relocatable symbols (variable/typed constant) can't be used with other\r
1372 % operators. Only addition is allowed.\r
1373 asmr_e_invalid_constant_expression=07012_E_Invalid constant expression\r
1374 % There is an error in the constant expression.\r
1375 asmr_e_relocatable_symbol_not_allowed=07013_E_Relocatable symbol is not allowed\r
1376 % You can't use a relocatable symbol (variable/typed constant) here.\r
1377 asmr_e_invalid_reference_syntax=07014_E_Invalid reference syntax\r
1378 % There is an error in the reference.\r
1379 asmr_e_local_para_unreachable=07015_E_You can not reach $1 from that code\r
1380 % You can not read directly the value of local or para\r
1381 % of a higher level in assembler code (except for\r
1382 % local assembler code without parameter nor locals).\r
1383 asmr_e_local_label_not_allowed_as_ref=07016_E_Local symbols/labels aren't allowed as references\r
1384 % You can't use local symbols/labels as references\r
1385 asmr_e_wrong_base_index=07017_E_Invalid base and index register usage\r
1386 % There is an error with the base and index register\r
1387 asmr_w_possible_object_field_bug=07018_W_Possible error in object field handling\r
1388 % Fields of objects or classes can be reached directly in normal or objfpc\r
1389 % modes but TP and Delphi modes treat the field name as a simple offset.\r
1390 asmr_e_wrong_scale_factor=07019_E_Wrong scale factor specified\r
1391 % The scale factor given is wrong, only 1,2,4 and 8 are allowed\r
1392 asmr_e_multiple_index=07020_E_Multiple index register usage\r
1393 % You are trying to use more than one index register\r
1394 asmr_e_invalid_operand_type=07021_E_Invalid operand type\r
1395 % The operand type doesn't match with the opcode used\r
1396 asmr_e_invalid_string_as_opcode_operand=07022_E_Invalid string as opcode operand: $1\r
1397 % The string specified as operand is not correct with this opcode\r
1398 asmr_w_CODE_and_DATA_not_supported=07023_W_@CODE and @DATA not supported\r
1399 % @CODE and @DATA are unsupported and are ignored.\r
1400 asmr_e_null_label_ref_not_allowed=07024_E_Null label references are not allowed\r
1401 asmr_e_expr_zero_divide=07025_E_Divide by zero in asm evaluator\r
1402 asmr_e_expr_illegal=07026_E_Illegal expression\r
1403 asmr_e_escape_seq_ignored=07027_E_escape sequence ignored: $1\r
1404 asmr_e_invalid_symbol_ref=07028_E_Invalid symbol reference\r
1405 asmr_w_fwait_emu_prob=07029_W_Fwait can cause emulation problems with emu387\r
1406 asmr_w_fadd_to_faddp=07030_W_FADD without operand translated into FADDP\r
1407 asmr_w_enter_not_supported_by_linux=07031_W_ENTER instruction is not supported by Linux kernel\r
1408 % ENTER instruction can generate a stack page fault that is not\r
1409 % caught correctly by the i386 Linux page handler.\r
1410 asmr_w_calling_overload_func=07032_W_Calling an overload function in assembler\r
1411 asmr_e_unsupported_symbol_type=07033_E_Unsupported symbol type for operand\r
1412 asmr_e_constant_out_of_bounds=07034_E_Constant value out of bounds\r
1413 asmr_e_error_converting_decimal=07035_E_Error converting decimal $1\r
1414 asmr_e_error_converting_octal=07036_E_Error converting octal $1\r
1415 asmr_e_error_converting_binary=07037_E_Error converting binary $1\r
1416 asmr_e_error_converting_hexadecimal=07038_E_Error converting hexadecimal $1\r
1417 asmr_h_direct_global_to_mangled=07039_H_$1 translated to $2\r
1418 asmr_w_direct_global_is_overloaded_func=07040_W_$1 is associated to an overloaded function\r
1419 asmr_e_cannot_use_SELF_outside_a_method=07041_E_Cannot use SELF outside a method\r
1420 asmr_e_cannot_use_OLDEBP_outside_nested_procedure=07042_E_Cannot use OLDEBP outside a nested procedure\r
1421 asmr_e_cannot_use_RESULT_here=07084_E_Cannot use RESULT in this function\r
1422 asmr_h_RESULT_is_reg=07085_H_RESULT is register $1\r
1423 asmr_e_void_function=07043_W_Procedures can't return any value in asm code\r
1424 asmr_e_SEG_not_supported=07044_E_SEG not supported\r
1425 asmr_e_size_suffix_and_dest_dont_match=07045_E_Size suffix and destination or source size do not match\r
1426 asmr_w_size_suffix_and_dest_dont_match=07046_W_Size suffix and destination or source size do not match\r
1427 asmr_e_syntax_error=07047_E_Assembler syntax error\r
1428 asmr_e_invalid_opcode_and_operand=07048_E_Invalid combination of opcode and operands\r
1429 asmr_e_syn_operand=07049_E_Assemler syntax error in operand\r
1430 asmr_e_syn_constant=07050_E_Assemler syntax error in constant\r
1431 asmr_e_invalid_string_expression=07051_E_Invalid String expression\r
1432 asmr_w_const32bit_for_address=07052_bit constant created for address\r
1433 asmr_e_unknown_opcode=07053_E_Unrecognized opcode $1\r
1434 asmr_e_invalid_or_missing_opcode=07054_E_Invalid or missing opcode\r
1435 asmr_e_invalid_prefix_and_opcode=07055_E_Invalid combination of prefix and opcode: $1\r
1436 asmr_e_invalid_override_and_opcode=07056_E_Invalid combination of override and opcode: $1\r
1437 asmr_e_too_many_operands=07057_E_Too many operands on line\r
1438 asmr_w_near_ignored=07058_W_NEAR ignored\r
1439 asmr_w_far_ignored=07059_W_FAR ignored\r
1440 asmr_e_dup_local_sym=07060_E_Duplicate local symbol $1\r
1441 asmr_e_unknown_local_sym=07061_E_Undefined local symbol $1\r
1442 asmr_e_unknown_label_identifier=07062_E_Unknown label identifier $1\r
1443 asmr_e_invalid_register=07063_E_Invalid register name\r
1444 asmr_e_invalid_fpu_register=07064_E_Invalid floating point register name\r
1445 asmr_e_nor_not_supported=07065_E_NOR not supported\r
1446 asmr_w_modulo_not_supported=07066_W_Modulo not supported\r
1447 asmr_e_invalid_float_const=07067_E_Invalid floating point constant $1\r
1448 asmr_e_invalid_float_expr=07068_E_Invalid floating point expression\r
1449 asmr_e_wrong_sym_type=07069_E_Wrong symbol type\r
1450 asmr_e_cannot_index_relative_var=07070_E_Cannot index a local var or parameter with a register\r
1451 asmr_e_invalid_seg_override=07071_E_Invalid segment override expression\r
1452 asmr_w_id_supposed_external=07072_W_Identifier $1 supposed external\r
1453 asmr_e_string_not_allowed_as_const=07073_E_Strings not allowed as constants\r
1454 asmr_e_no_var_type_specified=07074_No type of variable specified\r
1455 asmr_w_assembler_code_not_returned_to_text=07075_E_assembler code not returned to text section\r
1456 asmr_e_not_directive_or_local_symbol=07076_E_Not a directive or local symbol $1\r
1457 asmr_w_using_defined_as_local=07077_E_Using a defined name as a local label\r
1458 asmr_e_dollar_without_identifier=07078_E_Dollar token is used without an identifier\r
1459 asmr_w_32bit_const_for_address=07079_W_32bit constant created for address\r
1460 asmr_n_align_is_target_specific=07080_N_.align is target specific, use .balign or .p2align\r
1461 asmr_e_cannot_access_field_directly_for_parameters=07081_E_Can't access fields directly for parameters\r
1462 % You should load the parameter first into a register and then access the\r
1463 % fields using that register.\r
1464 asmr_e_cannot_access_object_field_directly=07082_E_Can't access fields of objects/classes directly\r
1465 % You should load the self pointer first into a register and then access the\r
1466 % fields using the register as base. By default the self pointer is available\r
1467 % in the esi register on i386.\r
1468 asmr_e_unable_to_determine_reference_size=07083_E_No size specified and unable to determine the size of the operands\r
1469 % You should specify explicitly a size for the reference, because\r
1470 % compiler is unable to determine what size (byte,word,dword,etc.) it\r
1471 % should use for the reference.\r
1473 # Assembler/binary writers\r
1475 # 08013 is the last used one\r
1477 asmw_f_too_many_asm_files=08000_F_Too many assembler files\r
1478 asmw_f_assembler_output_not_supported=08001_F_Selected assembler output not supported\r
1479 asmw_f_comp_not_supported=08002_F_Comp not supported\r
1480 asmw_f_direct_not_supported=08003_F_Direct not support for binary writers\r
1481 asmw_e_alloc_data_only_in_bss=08004_E_Allocating of data is only allowed in bss section\r
1482 asmw_f_no_binary_writer_selected=08005_F_No binary writer selected\r
1483 asmw_e_opcode_not_in_table=08006_E_Asm: Opcode $1 not in table\r
1484 asmw_e_invalid_opcode_and_operands=08007_E_Asm: $1 invalid combination of opcode and operands\r
1485 asmw_e_16bit_not_supported=08008_E_Asm: 16 Bit references not supported\r
1486 asmw_e_invalid_effective_address=08009_E_Asm: Invalid effective address\r
1487 asmw_e_immediate_or_reference_expected=08010_E_Asm: Immediate or reference expected\r
1488 asmw_e_value_exceeds_bounds=08011_E_Asm: $1 value exceeds bounds $2\r
1489 asmw_e_short_jmp_out_of_range=08012_E_Asm: Short jump is out of range $1\r
1490 asmw_e_undefined_label=08013_E_Asm: Undefined label $1\r
1494 # Executing linker/assembler\r
1496 # 09034 is the last used one\r
1498 # BeginOfTeX\r
1500 % \section{Errors of assembling/linking stage}\r
1501 % This section lists errors that occur when the compiler is processing the\r
1502 % command line or handling the configuration files.\r
1503 % \begin{description}\r
1504 exec_w_source_os_redefined=09000_W_Source operating system redefined\r
1505 exec_i_assembling_pipe=09001_I_Assembling (pipe) $1\r
1506 exec_d_cant_create_asmfile=09002_E_Can't create assember file: $1\r
1507 % The mentioned file can't be create. Check if you've\r
1508 % permission to create this file\r
1509 exec_e_cant_create_objectfile=09003_E_Can't create object file: $1\r
1510 % The mentioned file can't be create. Check if you've\r
1511 % permission to create this file\r
1512 exec_e_cant_create_archivefile=09004_E_Can't create archive file: $1\r
1513 % The mentioned file can't be create. Check if you've\r
1514 % permission to create this file\r
1515 exec_w_assembler_not_found=09005_W_Assembler $1 not found, switching to external assembling\r
1516 exec_t_using_assembler=09006_T_Using assembler: $1\r
1517 exec_w_error_while_assembling=09007_W_Error while assembling exitcode $1\r
1518 exec_w_cant_call_assembler=09008_W_Can't call the assembler, error $1 switching to external assembling\r
1519 exec_i_assembling=09009_I_Assembling $1\r
1520 exec_i_assembling_smart=09010_I_Assembling smartlink $1\r
1521 exec_w_objfile_not_found=09011_W_Object $1 not found, Linking may fail !\r
1522 exec_w_libfile_not_found=09012_W_Library $1 not found, Linking may fail !\r
1523 exec_w_error_while_linking=09013_W_Error while linking\r
1524 exec_w_cant_call_linker=09014_W_Can't call the linker, switching to external linking\r
1525 exec_i_linking=09015_I_Linking $1\r
1526 exec_w_util_not_found=09016_W_Util $1 not found, switching to external linking\r
1527 exec_t_using_util=09017_T_Using util $1\r
1528 exec_e_exe_not_supported=09018_E_Creation of Executables not supported\r
1529 exec_e_dll_not_supported=09019_E_Creation of Dynamic/Shared Libraries not supported\r
1530 exec_i_closing_script=09020_I_Closing script $1\r
1531 exec_w_res_not_found=09021_W_resource compiler not found, switching to external mode\r
1532 exec_i_compilingresource=09022_I_Compiling resource $1\r
1533 exec_t_unit_not_static_linkable_switch_to_smart=09023_T_unit $1 can't be static linked, switching to smart linking\r
1534 exec_t_unit_not_smart_linkable_switch_to_static=09024_T_unit $1 can't be smart linked, switching to static linking\r
1535 exec_t_unit_not_shared_linkable_switch_to_static=09025_T_unit $1 can't be shared linked, switching to static linking\r
1536 exec_e_unit_not_smart_or_static_linkable=09026_E_unit $1 can't be smart or static linked\r
1537 exec_e_unit_not_shared_or_static_linkable=09027_E_unit $1 can't be shared or static linked\r
1538 %\end{description}\r
1539 # EndOfTeX\r
1542 # Executable information\r
1544 execinfo_f_cant_process_executable=09028_F_Can't post process executable $1\r
1545 execinfo_f_cant_open_executable=09029_F_Can't open executable $1\r
1546 execinfo_x_codesize=09030_X_Size of Code: $1 bytes\r
1547 execinfo_x_initdatasize=09031_X_Size of initialized data: $1 bytes\r
1548 execinfo_x_uninitdatasize=09032_X_Size of uninitialized data: $1 bytes\r
1549 execinfo_x_stackreserve=09033_X_Stack space reserved: $1 bytes\r
1550 execinfo_x_stackcommit=09034_X_Stack space commited: $1 bytes\r
1553 # Unit loading\r
1555 # 10039 is the last used one\r
1557 # BeginOfTeX\r
1558 % \section{Unit loading messages.}\r
1559 % This section lists all messages that can occur when the compiler is\r
1560 % loading a unit from disk into memory. Many of these mesages are\r
1561 % informational messages.\r
1562 % \begin{description}\r
1563 unit_t_unitsearch=10000_T_Unitsearch: $1\r
1564 % When you use the \var{-vt}, the compiler tells you where it tries to find\r
1565 % unit files.\r
1566 unit_t_ppu_loading=10001_T_PPU Loading $1\r
1567 % When the \var{-vt} switch is used, the compiler tells you\r
1568 % what units it loads.\r
1569 unit_u_ppu_name=10002_U_PPU Name: $1\r
1570 % When you use the \var{-vu} flag, the unit name is shown.\r
1571 unit_u_ppu_flags=10003_U_PPU Flags: $1\r
1572 % When you use the \var{-vu} flag, the unit flags are shown.\r
1573 unit_u_ppu_crc=10004_U_PPU Crc: $1\r
1574 % When you use the \var{-vu} flag, the unit CRC check is shown.\r
1575 unit_u_ppu_time=10005_U_PPU Time: $1\r
1576 % When you use the \var{-vu} flag, the time the unit was compiled is shown.\r
1577 unit_u_ppu_file_too_short=10006_U_PPU File too short\r
1578 % The ppufile is too short, not all declarations are present.\r
1579 unit_u_ppu_invalid_header=10007_U_PPU Invalid Header (no PPU at the begin)\r
1580 % A unit file contains as the first three bytes the ascii codes of \var{PPU}\r
1581 unit_u_ppu_invalid_version=10008_U_PPU Invalid Version $1\r
1582 % This unit file was compiled with a different version of the compiler, and\r
1583 % cannot be read.\r
1584 unit_u_ppu_invalid_processor=10009_U_PPU is compiled for an other processor\r
1585 % This unit file was compiled for a different processor type, and\r
1586 % cannot be read\r
1587 unit_u_ppu_invalid_target=10010_U_PPU is compiled for an other target\r
1588 % This unit file was compiled for a different processor type, and\r
1589 % cannot be read\r
1590 unit_u_ppu_source=10011_U_PPU Source: $1\r
1591 % When you use the \var{-vu} flag, the unit CRC check is shown.\r
1592 unit_u_ppu_write=10012_U_Writing $1\r
1593 % When you specify the \var{-vu} switch, the compiler will tell you where it\r
1594 % writes the unit file.\r
1595 unit_f_ppu_cannot_write=10013_F_Can't Write PPU-File\r
1596 % An error occurred when writing the unit file.\r
1597 unit_f_ppu_read_error=10014_F_Error reading PPU-File\r
1598 % This means that the unit file was corrupted, and contains invalid\r
1599 % information. Recompilation will be necessary.\r
1600 unit_f_ppu_read_unexpected_end=10015_F_unexpected end of PPU-File\r
1601 % Unexpected end of file.\r
1602 unit_f_ppu_invalid_entry=10016_F_Invalid PPU-File entry: $1\r
1603 % The unit the compiler is trying to read is corrupted, or generated with a\r
1604 % newer version of the compiler.\r
1605 unit_f_ppu_dbx_count_problem=10017_F_PPU Dbx count problem\r
1606 % There is an inconsistency in the debugging information of the unit.\r
1607 unit_e_illegal_unit_name=10018_E_Illegal unit name: $1\r
1608 % The name of the unit doesn't match the file name.\r
1609 unit_f_too_much_units=10019_F_Too much units\r
1610 % \fpc has a limit of 1024 units in a program. You can change this behavior\r
1611 % by changing the \var{maxunits} constant in the \file{files.pas} file of the\r
1612 % compiler, and recompiling the compiler.\r
1613 unit_f_circular_unit_reference=10020_F_Circular unit reference between $1 and $2\r
1614 % Two units are using each other in the interface part. This is only allowed\r
1615 % in the \var{implementation} part. At least one unit must contain the other one\r
1616 % in the \var{implementation} section.\r
1617 unit_f_cant_compile_unit=10021_F_Can't compile unit $1, no sources available\r
1618 % A unit was found that needs to be recompiled, but no sources are\r
1619 % available.\r
1620 unit_f_cant_find_ppu=10022_F_Can't find unit $1\r
1621 % You tried to use a unit of which the PPU file isn't found by the\r
1622 % compiler. Check your config files for the unit pathes\r
1623 unit_w_unit_name_error=10023_W_Unit $1 was not found but $2 exists\r
1624 unit_f_unit_name_error=10024_F_Unit $1 searched but $2 found\r
1625 % Dos truncation of 8 letters for unit PPU files\r
1626 % may lead to problems when unit name is longer than 8 letters.\r
1627 unit_w_switch_us_missed=10025_W_Compiling the system unit requires the -Us switch\r
1628 % When recompiling the system unit (it needs special treatment), the\r
1629 % \var{-Us} must be specified.\r
1630 unit_f_errors_in_unit=10026_F_There were $1 errors compiling module, stopping\r
1631 % When the compiler encounters a fatal error or too many errors in a module\r
1632 % then it stops with this message.\r
1633 unit_u_load_unit=10027_U_Load from $1 ($2) unit $3\r
1634 % When you use the \var{-vu} flag, which unit is loaded from which unit is\r
1635 % shown.\r
1636 unit_u_recompile_crc_change=10028_U_Recompiling $1, checksum changed for $2\r
1637 unit_u_recompile_source_found_alone=10029_U_Recompiling $1, source found only\r
1638 % When you use the \var{-vu} flag, these messages tell you why the current\r
1639 % unit is recompiled.\r
1640 unit_u_recompile_staticlib_is_older=10030_U_Recompiling unit, static lib is older than ppufile\r
1641 % When you use the \var{-vu} flag, the compiler warns if the static library\r
1642 % of the unit are older than the unit file itself.\r
1643 unit_u_recompile_sharedlib_is_older=10031_U_Recompiling unit, shared lib is older than ppufile\r
1644 % When you use the \var{-vu} flag, the compiler warns if the shared library\r
1645 % of the unit are older than the unit file itself.\r
1646 unit_u_recompile_obj_and_asm_older=10032_U_Recompiling unit, obj and asm are older than ppufile\r
1647 % When you use the \var{-vu} flag, the compiler warns if the assembler or\r
1648 % object file of the unit are older than the unit file itself.\r
1649 unit_u_recompile_obj_older_than_asm=10033_U_Recompiling unit, obj is older than asm\r
1650 % When you use the \var{-vu} flag, the compiler warns if the assembler\r
1651 % file of the unit is older than the object file of the unit.\r
1652 unit_u_start_parse_interface=10034_U_Parsing interface of $1\r
1653 % When you use the \var{-vu} flag, the compiler warns that it starts\r
1654 % parsing the interface part of the unit\r
1655 unit_u_start_parse_implementation=10035_U_Parsing implementation of $1\r
1656 % When you use the \var{-vu} flag, the compiler warns that it starts\r
1657 % parsing the implementation part of the unit\r
1658 unit_u_second_load_unit=10036_U_Second load for unit $1\r
1659 % When you use the \var{-vu} flag, the compiler warns that it starts\r
1660 % recompiling a unit for the second time. This can happend with interdepend\r
1661 % units.\r
1662 unit_u_check_time=10037_U_PPU Check file $1 time $2\r
1663 % When you use the \var{-vu} flag, the compiler show the filename and\r
1664 % date and time of the file which a recompile depends on\r
1665 unit_h_cond_not_set_in_last_compile=10038_H_Conditional $1 was not set at startup in last compilation of $2\r
1666 % when recompilation of an unit is required the compiler will check that\r
1667 % the same conditionals are set for the recompiliation. The compiler has\r
1668 % found a conditional that currently is defined, but was not used the last\r
1669 % time the unit was compiled.\r
1670 unit_h_cond_set_in_last_compile=10039_H_Conditional $1 was set at startup in last compilation of $2\r
1671 % when recompilation of an unit is required the compiler will check that\r
1672 % the same conditionals are set for the recompiliation. The compiler has\r
1673 % found a conditional that was used the last time the unit was compiled, but\r
1674 % the conditional is currently not defined.\r
1675 % \end{description}\r
1676 # EndOfTeX\r
1679 #  Options\r
1681 # 11025 is the last used one\r
1683 option_usage=11000_$1 [options] <inputfile> [options]\r
1684 # BeginOfTeX\r
1686 % \section{Command-line handling errors}\r
1687 % This section lists errors that occur when the compiler is processing the\r
1688 % command line or handling the configuration files.\r
1689 % \begin{description}\r
1690 option_only_one_source_support=11001_W_Only one source file supported\r
1691 % You can specify only one source file on the command line. The first\r
1692 % one will be compiled, others will be ignored. This may indicate that\r
1693 % you forgot a \var{'-'} sign.\r
1694 option_def_only_for_os2=11002_W_DEF file can be created only for OS/2\r
1695 % This option can only be specified when you're compiling for OS/2\r
1696 option_no_nested_response_file=11003_E_nested response files are not supported\r
1697 % you cannot nest response files with the \var{@file} command-line option.\r
1698 option_no_source_found=11004_F_No source file name in command line\r
1699 % The compiler expects a source file name on the command line.\r
1700 option_no_option_found=11005_N_No option inside $1 config file\r
1701 % The compiler didn't find any option in that config file.\r
1702 option_illegal_para=11006_E_Illegal parameter: $1\r
1703 % You specified an unknown option.\r
1704 option_help_pages_para=11007_H_-? writes help pages\r
1705 % When an unknown option is given, this message is diplayed.\r
1706 option_too_many_cfg_files=11008_F_Too many config files nested\r
1707 % You can only nest up to 16 config files.\r
1708 option_unable_open_file=11009_F_Unable to open file $1\r
1709 % The option file cannot be found.\r
1710 option_reading_further_from=11010_N_Reading further options from $1\r
1711 % Displayed when you have notes turned on, and the compiler switches\r
1712 % to another options file.\r
1713 option_target_is_already_set=11011_W_Target is already set to: $1\r
1714 % Displayed if more than one \var{-T} option is specified.\r
1715 option_no_shared_lib_under_dos=11012_W_Shared libs not supported on DOS platform, reverting to static\r
1716 % If you specify \var{-CD} for the \dos platform, this message is displayed.\r
1717 % The compiler supports only static libraries under \dos\r
1718 option_too_many_ifdef=11013_F_too many IF(N)DEFs\r
1719 % the \var{\#IF(N)DEF} statements in the options file are not balanced with\r
1720 % the \var{\#ENDIF} statements.\r
1721 option_too_many_endif=11014_F_too many ENDIFs\r
1722 % the \var{\#IF(N)DEF} statements in the options file are not balanced with\r
1723 % the \var{\#ENDIF} statements.\r
1724 option_too_less_endif=11015_F_open conditional at the end of the file\r
1725 % the \var{\#IF(N)DEF} statements in the options file are not balanced with\r
1726 % the \var{\#ENDIF} statements.\r
1727 option_no_debug_support=11016_W_Debug information generation is not supported by this executable\r
1728 % It is possible to have a compiler executable that doesn't support\r
1729 % the generation of debugging info. If you use such an executable with the\r
1730 % \var{-g} switch, this warning will be displayed.\r
1731 option_no_debug_support_recompile_fpc=11017_H_Try recompiling with -dGDB\r
1732 % It is possible to have a compiler executable that doesn't support\r
1733 % the generation of debugging info. If you use such an executable with the\r
1734 % \var{-g} switch, this warning will be displayed.\r
1735 option_obsolete_switch=11018_E_You are using the obsolete switch $1\r
1736 % this warns you when you use a switch that is not needed/supported anymore.\r
1737 % It is recommended that you remove the switch to overcome problems in the\r
1738 % future, when the switch meaning may change.\r
1739 option_obsolete_switch_use_new=11019_E_You are using the obsolete switch $1, please use $2\r
1740 % this warns you when you use a switch that is not supported anymore. You\r
1741 % must now use the second switch instead.\r
1742 % It is recommended that you change the switch to overcome problems in the\r
1743 % future, when the switch meaning may change.\r
1744 option_switch_bin_to_src_assembler=11020_N_Switching assembler to default source writing assembler\r
1745 % this notifies you that the assembler has been changed because you used the\r
1746 % -a switch which can't be used with a binary assembler writer.\r
1747 option_incompatible_asm=11021_W_Assembler output selected "$1" is not compatible with "$2"\r
1748 option_asm_forced=11022_W_"$1" assembler use forced\r
1749 % The assembler output selected can not generate\r
1750 % object files with the correct format. Therefore, the\r
1751 % default assembler for this target is used instead.\r
1752 %\end{description}\r
1753 # EndOfTeX\r
1756 # Logo (option -l)\r
1758 option_logo=11023_[\r
1759 Free Pascal Compiler version $FPCVER [$FPCDATE] for $FPCTARGET\r
1760 Copyright (c) 1993-2000 by Florian Klaempfl\r
1764 # Info (option -i)\r
1766 option_info=11024_[\r
1767 Free Pascal Compiler version $FPCVER\r
1769 Compiler Date  : $FPCDATE\r
1770 Compiler Target: $FPCTARGET\r
1772 This program comes under the GNU General Public Licence\r
1773 For more information read COPYING.FPC\r
1775 Report bugs,suggestions etc to:\r
1776                  bugrep@freepascal.org\r
1780 # Help pages (option -? and -h)\r
1782 option_help_pages=11025_[\r
1783 **0*_put + after a boolean switch option to enable it, - to disable it\r
1784 **1a_the compiler doesn't delete the generated assembler file\r
1785 **2al_list sourcecode lines in assembler file\r
1786 **2ar_list register allocation/release info in assembler file\r
1787 **2at_list temp allocation/release info in assembler file\r
1788 **1b_generate browser info\r
1789 **2bl_generate local symbol info\r
1790 **1B_build all modules\r
1791 **1C<x>_code generation options:\r
1792 **2CD_create also dynamic library (not supported)\r
1793 **2Ch<n>_<n> bytes heap (between 1023 and 67107840)\r
1794 **2Ci_IO-checking\r
1795 **2Cn_omit linking stage\r
1796 **2Co_check overflow of integer operations\r
1797 **2Cr_range checking\r
1798 **2Cs<n>_set stack size to <n>\r
1799 **2Ct_stack checking\r
1800 **2CX_create also smartlinked library\r
1801 **1d<x>_defines the symbol <x>\r
1802 *O1D_generate a DEF file\r
1803 *O2Dd<x>_set description to <x>\r
1804 *O2Dw_PM application\r
1805 **1e<x>_set path to executable\r
1806 **1E_same as -Cn\r
1807 **1F<x>_set file names and paths:\r
1808 **2FD<x>_sets the directory where to search for compiler utilities\r
1809 **2Fe<x>_redirect error output to <x>\r
1810 **2FE<x>_set exe/unit output path to <x>\r
1811 **2Fi<x>_adds <x> to include path\r
1812 **2Fl<x>_adds <x> to library path\r
1813 *L2FL<x>_uses <x> as dynamic linker\r
1814 **2Fo<x>_adds <x> to object path\r
1815 **2Fr<x>_load error message file <x>\r
1816 **2Fu<x>_adds <x> to unit path\r
1817 **2FU<x>_set unit output path to <x>, overrides -FE\r
1818 *g1g_generate debugger information:\r
1819 *g2gg_use gsym\r
1820 *g2gd_use dbx\r
1821 *g2gh_use heap trace unit (for memory leak debugging)\r
1822 *g2gl_use line info unit to show more info for backtraces\r
1823 *g2gc_generate checks for pointers\r
1824 **1i_information\r
1825 **2iD_return compiler date\r
1826 **2iV_return compiler version\r
1827 **2iSO_return compiler OS\r
1828 **2iSP_return compiler processor\r
1829 **2iTO_return target OS\r
1830 **2iTP_return target processor\r
1831 **1I<x>_adds <x> to include path\r
1832 **1k<x>_Pass <x> to the linker\r
1833 **1l_write logo\r
1834 **1n_don't read the default config file\r
1835 **1o<x>_change the name of the executable produced to <x>\r
1836 **1pg_generate profile code for gprof (defines FPC_PROFILE)\r
1837 *L1P_use pipes instead of creating temporary assembler files\r
1838 **1S<x>_syntax options:\r
1839 **2S2_switch some Delphi 2 extensions on\r
1840 **2Sc_supports operators like C (*=,+=,/= and -=)\r
1841 **2sa_include assertion code.\r
1842 **2Sd_tries to be Delphi compatible\r
1843 **2Se<x>_compiler stops after the <x> errors (default is 1)\r
1844 **2Sg_allow LABEL and GOTO\r
1845 **2Sh_Use ansistrings\r
1846 **2Si_support C++ styled INLINE\r
1847 **2Sm_support macros like C (global)\r
1848 **2So_tries to be TP/BP 7.0 compatible\r
1849 **2Sp_tries to be gpc compatible\r
1850 **2Ss_constructor name must be init (destructor must be done)\r
1851 **2St_allow static keyword in objects\r
1852 **1s_don't call assembler and linker (only with -a)\r
1853 **1u<x>_undefines the symbol <x>\r
1854 **1U_unit options:\r
1855 **2Un_don't check the unit name\r
1856 **2Us_compile a system unit\r
1857 **1v<x>_Be verbose. <x> is a combination of the following letters:\r
1858 **2*_e : Show errors (default)       d : Show debug info\r
1859 **2*_w : Show warnings               u : Show unit info\r
1860 **2*_n : Show notes                  t : Show tried/used files\r
1861 **2*_h : Show hints                  m : Show defined macros\r
1862 **2*_i : Show general info           p : Show compiled procedures\r
1863 **2*_l : Show linenumbers            c : Show conditionals\r
1864 **2*_a : Show everything             0 : Show nothing (except errors)\r
1865 **2*_b : Show all procedure          r : Rhide/GCC compatibility mode\r
1866 **2*_    declarations if an error    x : Executable info (Win32 only)\r
1867 **2*_    occurs\r
1868 **1X_executable options:\r
1869 *L2Xc_link with the c library\r
1870 **2Xs_strip all symbols from executable\r
1871 **2XD_try to link dynamic          (defines FPC_LINK_DYNAMIC)\r
1872 **2XS_try to link static (default) (defines FPC_LINK_STATIC)\r
1873 **2XX_try to link smart            (defines FPC_LINK_SMART)\r
1874 **0*_Processor specific options:\r
1875 3*1A<x>_output format:\r
1876 3*2Aas_assemble using GNU AS\r
1877 3*2Aasaout_assemble using GNU AS for aout (Go32v1)\r
1878 3*2Anasmcoff_coff (Go32v2) file using Nasm\r
1879 3*2Anasmelf_elf32 (Linux) file using Nasm\r
1880 3*2Anasmobj_obj file using Nasm\r
1881 3*2Amasm_obj file using Masm (Microsoft)\r
1882 3*2Atasm_obj file using Tasm (Borland)\r
1883 3*2Acoff_coff (Go32v2) using internal writer\r
1884 3*2Apecoff_pecoff (Win32) using internal writer\r
1885 3*1R<x>_assembler reading style:\r
1886 3*2Ratt_read AT&T style assembler\r
1887 3*2Rintel_read Intel style assembler\r
1888 3*2Rdirect_copy assembler text directly to assembler file\r
1889 3*1O<x>_optimizations:\r
1890 3*2Og_generate smaller code\r
1891 3*2OG_generate faster code (default)\r
1892 3*2Or_keep certain variables in registers\r
1893 3*2Ou_enable uncertain optimizations (see docs)\r
1894 3*2O1_level 1 optimizations (quick optimizations)\r
1895 3*2O2_level 2 optimizations (-O1 + slower optimizations)\r
1896 3*2O3_level 3 optimizations (same as -O2u)\r
1897 3*2Op<x>_target processor:\r
1898 3*3Op1_set target processor to 386/486\r
1899 3*3Op2_set target processor to Pentium/PentiumMMX (tm)\r
1900 3*3Op3_set target processor to PPro/PII/c6x86/K6 (tm)\r
1901 3*1T<x>_Target operating system:\r
1902 3*2TGO32V1_version 1 of DJ Delorie DOS extender\r
1903 3*2TGO32V2_version 2 of DJ Delorie DOS extender\r
1904 3*2TLINUX_Linux\r
1905 3*2TOS2_OS/2 2.x\r
1906 3*2TWin32_Windows 32 Bit\r
1907 3*1W<x>_Win32 target options\r
1908 3*2WB<x>_Set Image base to Hexadecimal <x> value\r
1909 3*2WC_Specify console type application\r
1910 3*2WD_Use DEFFILE to export functions of DLL or EXE\r
1911 3*2WG_Specify graphic type application\r
1912 3*2WN_Do not generate relocation code (necessary for debugging)\r
1913 3*2WR_Generate relocation code\r
1914 6*1A<x>_output format\r
1915 6*2Aas_Unix o-file using GNU AS\r
1916 6*2Agas_GNU Motorola assembler\r
1917 6*2Amit_MIT Syntax (old GAS)\r
1918 6*2Amot_Standard Motorola assembler\r
1919 6*1O_optimizations:\r
1920 6*2Oa_turn on the optimizer\r
1921 6*2Og_generate smaller code\r
1922 6*2OG_generate faster code (default)\r
1923 6*2Ox_optimize maximum (still BUGGY!!!)\r
1924 6*2O2_set target processor to a MC68020+\r
1925 6*1R<x>_assembler reading style:\r
1926 6*2RMOT_read motorola style assembler\r
1927 6*1T<x>_Target operating system:\r
1928 6*2TAMIGA_Commodore Amiga\r
1929 6*2TATARI_Atari ST/STe/TT\r
1930 6*2TMACOS_Macintosh m68k\r
1931 6*2TLINUX_Linux-68k\r
1932 **1*_\r
1933 **1?_shows this help\r
1934 **1h_shows this help without waiting\r
1938 # The End...\r