瀏覽代碼

--- Merging r18457 into '.':
U compiler/msg/errord.msg
U compiler/msg/errordu.msg
--- Merging r20583 into '.':
U compiler/fppu.pas
U compiler/pmodules.pas
--- Merging r20605 into '.':
U compiler/msgtxt.inc
U compiler/msg/errorheu.msg
G compiler/msg/errord.msg
U compiler/msg/errorpt.msg
U compiler/msg/errorda.msg
U compiler/msg/errore.msg
U compiler/msg/errorpli.msg
U compiler/msg/errorru.msg
U compiler/msg/errorues.msg
U compiler/msg/errorhe.msg
U compiler/msg/errorid.msg
U compiler/msg/errorfi.msg
U compiler/msg/errorr.msg
U compiler/msg/errorct.msg
U compiler/msg/errores.msg
G compiler/msg/errordu.msg
U compiler/msg/errorptu.msg
U compiler/msg/errorpl.msg
--- Merging r20696 into '.':
G compiler/fppu.pas

# revisions: 18457,20583,20605,20696
------------------------------------------------------------------------
r18457 | florian | 2011-08-20 10:01:26 +0200 (Sat, 20 Aug 2011) | 1 line
Changed paths:
M /trunk/compiler/msg/errord.msg
M /trunk/compiler/msg/errordu.msg

* update of german error message files by Karl-Michael Schindler, resolves #20021
------------------------------------------------------------------------
------------------------------------------------------------------------
r20583 | florian | 2012-03-22 22:04:16 +0100 (Thu, 22 Mar 2012) | 1 line
Changed paths:
M /trunk/compiler/fppu.pas
M /trunk/compiler/pmodules.pas

* write the file location (if available), if a unit is not found, resolves #21514
------------------------------------------------------------------------
------------------------------------------------------------------------
r20605 | florian | 2012-03-23 19:38:05 +0100 (Fri, 23 Mar 2012) | 1 line
Changed paths:
M /trunk/compiler/msg/errorct.msg
M /trunk/compiler/msg/errord.msg
M /trunk/compiler/msg/errorda.msg
M /trunk/compiler/msg/errordu.msg
M /trunk/compiler/msg/errore.msg
M /trunk/compiler/msg/errores.msg
M /trunk/compiler/msg/errorfi.msg
M /trunk/compiler/msg/errorhe.msg
M /trunk/compiler/msg/errorheu.msg
M /trunk/compiler/msg/errorid.msg
M /trunk/compiler/msg/errorpl.msg
M /trunk/compiler/msg/errorpli.msg
M /trunk/compiler/msg/errorpt.msg
M /trunk/compiler/msg/errorptu.msg
M /trunk/compiler/msg/errorr.msg
M /trunk/compiler/msg/errorru.msg
M /trunk/compiler/msg/errorues.msg
M /trunk/compiler/msgtxt.inc

* updated copyright message to 2012
------------------------------------------------------------------------
------------------------------------------------------------------------
r20696 | pierre | 2012-04-03 09:27:55 +0200 (Tue, 03 Apr 2012) | 1 line
Changed paths:
M /trunk/compiler/fppu.pas

* Fix bug #21607
------------------------------------------------------------------------

git-svn-id: branches/fixes_2_6@20944 -

marco 13 年之前
父節點
當前提交
2a4014ef3f

+ 14 - 1
compiler/fppu.pas

@@ -1484,6 +1484,7 @@ var
         do_load,
         do_load,
         second_time        : boolean;
         second_time        : boolean;
         old_current_module : tmodule;
         old_current_module : tmodule;
+        pu : tused_unit;
       begin
       begin
         old_current_module:=current_module;
         old_current_module:=current_module;
         Message3(unit_u_load_unit,old_current_module.modulename^,
         Message3(unit_u_load_unit,old_current_module.modulename^,
@@ -1620,7 +1621,19 @@ var
                   begin
                   begin
                     printcomments;
                     printcomments;
                     if recompile_reason=rr_noppu then
                     if recompile_reason=rr_noppu then
-                      Message2(unit_f_cant_find_ppu,realmodulename^,loaded_from.realmodulename^)
+                      begin
+                        pu:=tused_unit(loaded_from.used_units.first);
+                        while assigned(pu) do
+                          begin
+                            if pu.u=self then
+                              break;
+                            pu:=tused_unit(pu.next);
+                          end;
+                        if assigned(pu) and assigned(pu.unitsym) then
+                          MessagePos2(pu.unitsym.fileinfo,unit_f_cant_find_ppu,realmodulename^,loaded_from.realmodulename^)
+                        else
+                          Message2(unit_f_cant_find_ppu,realmodulename^,loaded_from.realmodulename^);
+                      end
                     else
                     else
                       Message1(unit_f_cant_compile_unit,realmodulename^);
                       Message1(unit_f_cant_compile_unit,realmodulename^);
                   end;
                   end;

+ 1 - 1
compiler/msg/errorct.msg

@@ -2100,7 +2100,7 @@ option_code_page_not_available=11039_E_La p
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler versió $FPCFULLVERSION [$FPCDATE] per $FPCCPU
 Free Pascal Compiler versió $FPCFULLVERSION [$FPCDATE] per $FPCCPU
-Copyright (c) 1993-2011 per Florian Klaempfl
+Copyright (c) 1993-2012 per Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 133 - 50
compiler/msg/errord.msg

@@ -3,7 +3,7 @@
 #   Latest updates contributed by Karl-Michael Schindler aka mischi
 #   Latest updates contributed by Karl-Michael Schindler aka mischi
 #   <karl-michael.schindler at web.de>
 #   <karl-michael.schindler at web.de>
 #
 #
-#   Based on errore.msg of SVN revision 16783
+#   Based on errore.msg of SVN revision 18275
 #
 #
 #   This file is part of the Free Pascal Compiler
 #   This file is part of the Free Pascal Compiler
 #   Copyright (c) 1998-2010 by the Free Pascal Development team
 #   Copyright (c) 1998-2010 by the Free Pascal Development team
@@ -49,7 +49,7 @@
 #
 #
 # General
 # General
 #
 #
-# 01023 is the last used one
+# 01025 is the last used one
 #
 #
 # BeginOfTeX
 # BeginOfTeX
 % \section{General compiler messages}
 % \section{General compiler messages}
@@ -79,11 +79,11 @@ general_t_includepath=01005_T_Der Includepfad ist: $1
 general_t_librarypath=01006_T_Der Bibliothekspfad ist: $1
 general_t_librarypath=01006_T_Der Bibliothekspfad ist: $1
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % looks for the libraries. You can set this path with the \var{-Fl} option.
 % looks for the libraries. You can set this path with the \var{-Fl} option.
-general_t_objectpath=01007_T_Der Objektdateienpfad: $1
+general_t_objectpath=01007_T_Der Objektdateienpfad ist: $1
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % looks for object files you link in (files used in \var{\{\$L xxx\}} statements).
 % looks for object files you link in (files used in \var{\{\$L xxx\}} statements).
 % You can set this path with the \var{-Fo} option.
 % You can set this path with the \var{-Fo} option.
-general_i_abslines_compiled=01008_I_$1 Zeilen bersetzt, $2 Sekunden$3
+general_i_abslines_compiled=01008_I_$1 Zeilen bersetzt, $2 Sekunden $3
 % When the \var{-vi} switch is used, the compiler reports the number
 % When the \var{-vi} switch is used, the compiler reports the number
 % of lines compiled, and the time it took to compile them (real time,
 % of lines compiled, and the time it took to compile them (real time,
 % not program time).
 % not program time).
@@ -128,6 +128,10 @@ general_i_number_of_hints=01022_I_$1 Hinweis(e) ausgegeben
 % Total number of hints issued during compilation.
 % Total number of hints issued during compilation.
 general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 % Total number of notes issued during compilation.
 % Total number of notes issued during compilation.
+general_f_ioerror=01024_F_I/O Fehler: $1
+% During compilation an I/O error happened which allows no further compilation.
+general_f_oserror=01025_F_Betriebsystemfehler: $1
+% During compilation an operanting system error happened which allows no further compilation.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -135,7 +139,7 @@ general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 #
 #
 # Scanner
 # Scanner
 #
 #
-# 02087 is the last used one
+# 02088 is the last used one
 #
 #
 % \section{Scanner messages.}
 % \section{Scanner messages.}
 % This section lists the messages that the scanner emits. The scanner takes
 % This section lists the messages that the scanner emits. The scanner takes
@@ -152,7 +156,7 @@ scan_f_end_of_file=02000_F_Unerwartetes Dateiende
 % \item An include file ends in the middle of a statement.
 % \item An include file ends in the middle of a statement.
 % \item A comment was not closed.
 % \item A comment was not closed.
 % \end{itemize}
 % \end{itemize}
-scan_f_string_exceeds_line=02001_F_Zeichenkette geht ber Zeilenende hinaus
+scan_f_string_exceeds_line=02001_F_Zeichenkette geht ber das Zeilenende hinaus
 % You forgot probably to include the closing ' in a string, so it occupies
 % You forgot probably to include the closing ' in a string, so it occupies
 % multiple lines.
 % multiple lines.
 scan_f_illegal_char=02002_F_Unzul„ssiges Zeichen "$1" ($2)
 scan_f_illegal_char=02002_F_Unzul„ssiges Zeichen "$1" ($2)
@@ -217,7 +221,7 @@ scan_h_user_defined=02026_H_Benutzerdefiniert: $1
 % A user defined hint was encountered. See also the \progref
 % A user defined hint was encountered. See also the \progref
 scan_i_user_defined=02027_I_Benutzerdefiniert: $1
 scan_i_user_defined=02027_I_Benutzerdefiniert: $1
 % User defined information was encountered. See also the \progref
 % User defined information was encountered. See also the \progref
-scan_e_keyword_cant_be_a_macro=02028_E_Ein Makro, welches den selben Namen wie ein Schlsselwort hat, wird ignoriert
+scan_e_keyword_cant_be_a_macro=02028_E_Ein Makro, das den selben Namen wie ein Schlsselwort hat, wird ignoriert
 % You cannot redefine keywords with macros.
 % You cannot redefine keywords with macros.
 scan_f_macro_buffer_overflow=02029_F_Makropufferberlauf w„hrend des Lesens oder Expandierens eines Makros
 scan_f_macro_buffer_overflow=02029_F_Makropufferberlauf w„hrend des Lesens oder Expandierens eines Makros
 % Your macro or it's result was too long for the compiler.
 % Your macro or it's result was too long for the compiler.
@@ -296,7 +300,7 @@ scan_w_include_env_not_found=02054_W_$1 ist keine Umgebungsvariable
 % be replaced by an empty string instead.
 % be replaced by an empty string instead.
 scan_e_invalid_maxfpureg_value=02055_E_Nicht erlaubter Wert fr MAXFPUREGISTER-Direktive
 scan_e_invalid_maxfpureg_value=02055_E_Nicht erlaubter Wert fr MAXFPUREGISTER-Direktive
 % Valid values for this directive are 0..8 and NORMAL/DEFAULT.
 % Valid values for this directive are 0..8 and NORMAL/DEFAULT.
-scan_w_only_one_resourcefile_supported=02056_W_Nur ein Resourcedatei wird vom aktuellen Zielbetriebssystem untersttzt
+scan_w_only_one_resourcefile_supported=02056_W_Vom aktuellen Zielbetriebssystem wird nur eine Resourcedatei untersttzt
 % Only one resource file can be supported for this target - this is the case of
 % Only one resource file can be supported for this target - this is the case of
 % OS/2 (EMX) currently. The first one found is used, the others are discarded.
 % OS/2 (EMX) currently. The first one found is used, the others are discarded.
 scan_w_macro_support_turned_off=02057_W_Makrountersttzung ist ausgeschaltet
 scan_w_macro_support_turned_off=02057_W_Makrountersttzung ist ausgeschaltet
@@ -329,11 +333,11 @@ scan_e_mode_switch_not_allowed=02067_E_Der Modus Umschalter "$1" ist hier nicht
 % a mode switch occurs after UNIT.
 % a mode switch occurs after UNIT.
 scan_e_error_macro_undefined=02068_E_Die Compile time Variable oder das Makro "$1" ist nicht definiert.
 scan_e_error_macro_undefined=02068_E_Die Compile time Variable oder das Makro "$1" ist nicht definiert.
 % Thus the conditional compile time expression cannot be evaluated. Only in mode MacPas.
 % Thus the conditional compile time expression cannot be evaluated. Only in mode MacPas.
-scan_e_utf8_bigger_than_65535=02069_E_Der UTF-8 Kode ist gr”sser als 65535
+scan_e_utf8_bigger_than_65535=02069_E_Der UTF-8 Code ist gr”sser als 65535
 % \fpc handles UTF-8 strings internally as widestrings, i.e. the char codes are limited to 65535.
 % \fpc handles UTF-8 strings internally as widestrings, i.e. the char codes are limited to 65535.
 scan_e_utf8_malformed=02070_E_Ungltige UTF-8 Zeichenkette
 scan_e_utf8_malformed=02070_E_Ungltige UTF-8 Zeichenkette
 % The given string isn't a valid UTF-8 string.
 % The given string isn't a valid UTF-8 string.
-scan_c_switching_to_utf8=02071_C_UTF-8 Signatur gefunden, verwende UTF-8 Kode
+scan_c_switching_to_utf8=02071_C_UTF-8 Signatur gefunden, verwende UTF-8 Code
 % The compiler found a UTF-8 encoding signature (\$ef, \$bb, \$bf) at the beginning of a file,
 % The compiler found a UTF-8 encoding signature (\$ef, \$bb, \$bf) at the beginning of a file,
 % so it interprets it as a UTF-8 file.
 % so it interprets it as a UTF-8 file.
 scan_e_compile_time_typeerror=02072_E_Compile time Ausdruck: Erwartete $1 aber erhielt $2 bei $3
 scan_e_compile_time_typeerror=02072_E_Compile time Ausdruck: Erwartete $1 aber erhielt $2 bei $3
@@ -371,6 +375,9 @@ scan_w_multiple_main_name_overrides=02086_W_Der Name der "main" Prozedur wird me
 % name will be used.
 % name will be used.
 scanner_w_illegal_warn_identifier=02087_W_Ungltige Bezeichner "$1" fr die $WARN Direktive
 scanner_w_illegal_warn_identifier=02087_W_Ungltige Bezeichner "$1" fr die $WARN Direktive
 % Identifier is not known by a \var{\{\$WARN\}} compiler directive.
 % Identifier is not known by a \var{\{\$WARN\}} compiler directive.
+scanner_e_illegal_alignment_directive=02088_E_Ungltige "alignment" Direktive
+% The alignment directive is not valid. Either the alignment type is not known or the alignment
+% value is not a power of two.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -378,7 +385,7 @@ scanner_w_illegal_warn_identifier=02087_W_Ungltige Bezeichner "$1" fr die $WARN
 #
 #
 # Parser
 # Parser
 #
 #
-# 03304 is the last used one
+# 03313 is the last used one
 #
 #
 % \section{Parser messages}
 % \section{Parser messages}
 % This section lists all parser messages. The parser takes care of the
 % This section lists all parser messages. The parser takes care of the
@@ -403,7 +410,7 @@ parser_e_export_invalid_index=03010_E_Ungltiger Index for exportierte Funktion
 % DLL function index must be in the range \var{1..\$FFFF}.
 % DLL function index must be in the range \var{1..\$FFFF}.
 parser_w_parser_reloc_no_debug=03011_W_Fr relozierbare DLL oder ausfhrbare Datei $1 funktionieren keine Debug-Information, deaktiviert.
 parser_w_parser_reloc_no_debug=03011_W_Fr relozierbare DLL oder ausfhrbare Datei $1 funktionieren keine Debug-Information, deaktiviert.
 % It is currently not possible to include debug information in a relocatable DLL.
 % It is currently not possible to include debug information in a relocatable DLL.
-parser_w_parser_win32_debug_needs_WN=03012_W_Um Win32-Code debuggen zu k”nnen mssen die Relozierungen mit -WN option abgeschaltet werden.
+parser_w_parser_win32_debug_needs_WN=03012_W_Um Win32-Code debuggen zu k”nnen, mssen die Relozierungen mit -WN option abgeschaltet werden.
 % Stabs debug info is wrong for relocatable DLL or EXES. Use -WN
 % Stabs debug info is wrong for relocatable DLL or EXES. Use -WN
 % if you want to debug win32 executables.
 % if you want to debug win32 executables.
 parser_e_constructorname_must_be_init=03013_E_Konstruktor-Name muss INIT sein
 parser_e_constructorname_must_be_init=03013_E_Konstruktor-Name muss INIT sein
@@ -928,9 +935,9 @@ parser_e_no_access_specifier_in_interfaces=03172_E_Zugriffsbezeichner k
 % The access specifiers \var{public}, \var{private}, \var{protected} and
 % The access specifiers \var{public}, \var{private}, \var{protected} and
 % \var{published} can't be used in interfaces, Objective-C protocols and categories because all methods
 % \var{published} can't be used in interfaces, Objective-C protocols and categories because all methods
 % of an interface/protocol/category must be public.
 % of an interface/protocol/category must be public.
-parser_e_no_vars_in_interfaces=03173_E_Ein Interface, ein Objective-C Protokoll oder eine Kategorie darf keine Felder enthalten
-% Declarations of fields are not allowed in interfaces and Objective-C protocols and categories.
-% An interface/protocol/category can contain only methods and properties with method read/write specifiers.
+parser_e_no_vars_in_interfaces=03173_E_Ein Interface, ein Helfer, ein Objective-C Protokoll oder eine Kategorie darf keine Felder enthalten
+% Declarations of fields are not allowed in interfaces, helpers and Objective-C protocols and categories.
+% An interface/helper/protocol/category can contain only methods and properties with method read/write specifiers.
 parser_e_no_local_proc_external=03174_E_Eine lokale Prozedur kann nicht als EXTERNAL deklariert werden
 parser_e_no_local_proc_external=03174_E_Eine lokale Prozedur kann nicht als EXTERNAL deklariert werden
 % Declaring local procedures as external is not possible. Local procedures
 % Declaring local procedures as external is not possible. Local procedures
 % get hidden parameters that will make the chance of errors very high.
 % get hidden parameters that will make the chance of errors very high.
@@ -1275,9 +1282,12 @@ parser_e_objc_message_name_changed=03275_E_Der Nachrichtenname "$1" in der verer
 parser_e_no_objc_unique=03276_E_Noch k”nnen eindeutige Kopien von Objective-C Typen nicht erstellt werden
 parser_e_no_objc_unique=03276_E_Noch k”nnen eindeutige Kopien von Objective-C Typen nicht erstellt werden
 % Duplicating an Objective-C type using \var{type x = type y;} is not yet supported. You may be able to
 % Duplicating an Objective-C type using \var{type x = type y;} is not yet supported. You may be able to
 % obtain the desired effect using \var{type x = objcclass(y) end;} instead.
 % obtain the desired effect using \var{type x = objcclass(y) end;} instead.
-parser_e_no_category_as_types=03277_E_Objective-C Kategorien k”nnen nicht als Typen benutzt werden
-% It is not possible to declare a variable as an instance of an Objective-C category. A
-% category adds methods to the scope of an existing class, but does not define a type by itself.
+parser_e_no_category_as_types=03277_E_Objective-C Kategorien und Object-Pascal Klassenhelfer k”nnen nicht als Typen benutzt werden
+% It is not possible to declare a variable as an instance of an Objective-C
+% category or an Object Pascal class helper. A category/class helper adds
+% methods to the scope of an existing class, but does not define a type by
+% itself. An exception of this rule is when inheriting an Object Pascal class
+% helper from another class helper.
 parser_e_no_category_override=03278_E_Kategorien berschreiben Methoden nicht, sondern ersetzen sie. "reintroduce" benutzen
 parser_e_no_category_override=03278_E_Kategorien berschreiben Methoden nicht, sondern ersetzen sie. "reintroduce" benutzen
 parser_e_must_use_reintroduce_objc=03279_E_Ersetzte Methoden k”nnen in Objective-C nur wieder eingefhrt werden, fge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_e_must_use_reintroduce_objc=03279_E_Ersetzte Methoden k”nnen in Objective-C nur wieder eingefhrt werden, fge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_h_should_use_reintroduce_objc=03280_H_Ersetzte Methoden k”nnen in Objective-C nur wieder eingefhrt werden, fge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_h_should_use_reintroduce_objc=03280_H_Ersetzte Methoden k”nnen in Objective-C nur wieder eingefhrt werden, fge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
@@ -1363,19 +1373,44 @@ parser_e_forward_protocol_declaration_must_be_resolved=03298_E_Vorw
 % where \var{MyProtocol} is declared but not defined.
 % where \var{MyProtocol} is declared but not defined.
 parser_e_no_record_published=03299_E_Record -Typen k”nnen keine ”ffentlichen Abschnitte (published sections) haben
 parser_e_no_record_published=03299_E_Record -Typen k”nnen keine ”ffentlichen Abschnitte (published sections) haben
 % Published sections can be used only inside classes.
 % Published sections can be used only inside classes.
-parser_e_no_destructor_in_records=03300_E_Destruktoren sind in Records nicht erlaubt
-% Destructor declarations aren't allowed in records.
+parser_e_no_destructor_in_records=03300_E_Destruktoren sind in Records und Helfern nicht erlaubt
+% Destructor declarations aren't allowed in records or helpers.
 parser_e_class_methods_only_static_in_records=03301_E_Klassenmethoden mssen in Records statisch sein
 parser_e_class_methods_only_static_in_records=03301_E_Klassenmethoden mssen in Records statisch sein
 % Class methods declarations aren't allowed in records without static modifier.
 % Class methods declarations aren't allowed in records without static modifier.
 % Records have no inheritance and therefore non static class methods have no sence for them.
 % Records have no inheritance and therefore non static class methods have no sence for them.
-parser_e_no_constructor_in_records=03302_E_Konstruktoren sind in Records nicht erlaubt
-% Constructor declarations aren't allowed in records.
+parser_e_no_constructor_in_records=03302_E_Konstruktoren sind in Records und Recordhelfern nicht erlaubt
+% Constructor declarations aren't allowed in records or record helpers.
 parser_e_at_least_one_argument_must_be_of_type=03303_E_Entweder das Ergebnis oder mindestens ein Parameter mssen vom Typ "$1" sein
 parser_e_at_least_one_argument_must_be_of_type=03303_E_Entweder das Ergebnis oder mindestens ein Parameter mssen vom Typ "$1" sein
 % It is required that either the result of the routine or at least one of its parameters be of the specified type.
 % It is required that either the result of the routine or at least one of its parameters be of the specified type.
 % For example class operators either take an instance of the structured type in which they are defined, or they return one.
 % For example class operators either take an instance of the structured type in which they are defined, or they return one.
 parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter k”nnen initialization/finalization erfordern - Sie k”nnen deshalb nicht in varianten Rekords verwendet werden
 parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter k”nnen initialization/finalization erfordern - Sie k”nnen deshalb nicht in varianten Rekords verwendet werden
 % Type parameters may be specialized with types which (e.g. \var{ansistring}) need initialization/finalization
 % Type parameters may be specialized with types which (e.g. \var{ansistring}) need initialization/finalization
 % code which is implicitly generated by the compiler. 
 % code which is implicitly generated by the compiler. 
+parser_e_externals_no_section=03305_E_"external" deklarierte Variablen drfen nicht in einer "custom section" sein
+% A section directive is not valid for variables being declared as external.
+parser_e_section_no_locals=03306_E_Nicht-statische und nicht-globale Variablen drfen keine Direktive "section" haben
+% A variable placed in a custom section is always statically allocated so it must be either a static or global variable.
+parser_e_not_allowed_in_helper=03307_E_"$1" ist in Helfertypen nicht erlaubt
+% Some directives and specifiers like "virtual", "dynamic", "override" aren't
+% allowed inside helper types in mode ObjFPC (they are ignored in mode Delphi),
+% because they have no meaning within helpers. Also "abstract" isn't allowed in
+% either mode.
+parser_e_no_class_constructor_in_helpers=03308_E_Klassenkonstruktoren sind in Helfern nicht erlaubt
+% Class constructor declarations aren't allowed in helpers.
+parser_e_inherited_not_in_record=03309_E_"inherited" ist in einem Record nicht erlaubt
+% As records don't suppport inheritance the use of "inherited" is prohibited for
+% these as well as for record helpers (in mode "Delphi" only).
+parser_e_no_types_in_local_anonymous_records=03310_E_Typ-Deklarationen sind in lokalen oder anonymen Records nicht erlaubt
+% Records with types must be defined globally. Types cannot be defined inside records which are defined in a
+% procedure or function or in anonymous records.
+parser_e_duplicate_implements_clause=03311_E_Zweifacher "implements"-Term fr das Interface "$1"
+% A class may delegate an interface using the "implements" clause only to a single property. Delegating it multiple times
+% is a error.
+parser_e_mapping_no_implements=03312_E_Das Interface "$1" kann nicht durch "$2" delegiert werden. Die Methode ist bereits aufgel”st
+% Method resolution clause maps a method of an interface to a method of the current class. Therefore the current class
+% has to implement the interface directly. Delegation is not possible.
+parser_e_implements_no_mapping=03313_E_Das Interface "$1" kann keine Methoden-Aufl”sung haben, "$2" delegiert es bereits
+% Method resoulution is only possible for interfaces that are implemented directly, not by delegation.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -1383,7 +1418,7 @@ parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter k
 #
 #
 # Type Checking
 # Type Checking
 #
 #
-# 04098 is the last used one
+# 04103 is the last used one
 #
 #
 % \section{Type checking errors}
 % \section{Type checking errors}
 % This section lists all errors that can occur when type checking is
 % This section lists all errors that can occur when type checking is
@@ -1570,14 +1605,16 @@ type_e_type_is_not_completly_defined=04042_E_Typ "$1" ist nicht vollst
 type_w_string_too_long=04043_W_String literal hat mehr Zeichen als short string length
 type_w_string_too_long=04043_W_String literal hat mehr Zeichen als short string length
 % The size of the constant string, which is assigned to a shortstring,
 % The size of the constant string, which is assigned to a shortstring,
 % is longer than the maximum size of the shortstring (255 characters).
 % is longer than the maximum size of the shortstring (255 characters).
-type_w_signed_unsigned_always_false=04044_W_Wegen des Bereichs der Werte ist das Vergleichsergebnis immer falsch
-% There is a comparison between an unsigned value and a signed constant which is
-% less than zero. Because of type promotion, the statement will always evaluate to
-% false. Explicitly typecast the constant to the correct range to avoid this problem.
-type_w_signed_unsigned_always_true=04045_W_Wegen des Bereichs der Werte ist das Vergleichsergebnis immer richtig
-% There is a comparison between an unsigned value and a signed constant which is
-% less than zero. Because of type promotion, the statement will always evaluate to
-% true. Explicitly typecast the constant to the correct range to avoid this problem.
+type_w_comparison_always_false=04044_W_Wegen der Bereiche der Konstanten und des Ausdrucks k”nnte das Vergleichsergebnis immer falsch sein
+% There is a comparison between a constant and an expression where the constant is out of the
+% valid range of values of the expression. Because of type promotion, the statement will always evaluate to
+% false. Explicitly typecast the constant or the expression to the correct range to avoid this warning
+% if you think the code is correct.
+type_w_comparison_always_true=04045_W_Wegen der Bereiche der Konstanten und des Ausdrucks k”nnte das Vergleichsergebnis immer richtig sein
+% There is a comparison between a constant and an expression where the constant is out of the
+% valid range of values of the expression. Because of type promotion, the statement will always evaluate to
+% true. Explicitly typecast the constant or the expression to the correct range to avoid this warning
+% if you think the code is correct.
 type_w_instance_with_abstract=04046_W_Konstruktion der Klasse "$1" mit der abstrakten Methode "$2"
 type_w_instance_with_abstract=04046_W_Konstruktion der Klasse "$1" mit der abstrakten Methode "$2"
 % An instance of a class is created which contains non-implemented abstract
 % An instance of a class is created which contains non-implemented abstract
 % methods. This will probably lead to a runtime error 211 in the code if that
 % methods. This will probably lead to a runtime error 211 in the code if that
@@ -1664,7 +1701,7 @@ type_w_pointer_to_signed=04082_W_Die Konvertierung von Pointern in einen Integer
 % For example both \windows and \linux allow pointers in the range \$0000000 to \$bfffffff.
 % For example both \windows and \linux allow pointers in the range \$0000000 to \$bfffffff.
 % If you convert pointers to signed types, this can cause overflow and range check errors,
 % If you convert pointers to signed types, this can cause overflow and range check errors,
 % but also \$80000000 < \$7fffffff. This can cause random errors in code like "if p>q".
 % but also \$80000000 < \$7fffffff. This can cause random errors in code like "if p>q".
-type_interface_has_no_guid=04083_E_Interface Typ $1 hat keine gltige GUID
+type_e_interface_has_no_guid=04083_E_Interface Typ $1 hat keine gltige GUID
 % When applying the as-operator to an interface or class, the desired interface (i.e. the right operand of the
 % When applying the as-operator to an interface or class, the desired interface (i.e. the right operand of the
 % as-operator) must have a valid GUID.
 % as-operator) must have a valid GUID.
 type_e_invalid_objc_selector_name=04084_E_Ungltiger Objective-C-Selector-Name "$1"
 type_e_invalid_objc_selector_name=04084_E_Ungltiger Objective-C-Selector-Name "$1"
@@ -1731,6 +1768,20 @@ type_e_type_parameters_are_not_allowed_here=04097_E_Typ-Parameter sind fr nicht-
 % Type parameters are only allowed for methods of generic classes, records or objects
 % Type parameters are only allowed for methods of generic classes, records or objects
 type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von "$1" unterscheidet sich vom der vorherigen Deklaration
 type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von "$1" unterscheidet sich vom der vorherigen Deklaration
 % Generic declaration does not match the previous declaration
 % Generic declaration does not match the previous declaration
+type_e_helper_type_expected=04099_E_Helfertyp erwartet
+% The compiler expected a \var{class helper} type.
+type_e_record_type_expected=04100_E_Recordtyp erwartet
+% The compiler expected a \var{record} type.
+type_e_class_helper_must_extend_subclass=04101_E_Abgeleitete Klassenhelfer mssen eine Unterklasse von "$1" oder die Klasse selbst erweitern
+% If a class helper inherits from another class helper the extended class must
+% extend either the same class as the parent class helper or a subclass of it
+type_e_record_helper_must_extend_same_record=04102_E_Abgeleitete Recordhelfer mssen "$1" erweitern
+% If a record helper inherits from another record helper it must extend the same
+% record that the parent record helper extended.
+type_e_procedures_return_no_value=04103_E_Ungltige Zuweisung, eine Prozedur gibt keinen Wert zurck
+% This error occurs when one tries to assign the result of a procedure or destructor call.
+% A procedure or destructor returns no value so this is not
+% possible.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -1738,7 +1789,7 @@ type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von
 #
 #
 # Symtable
 # Symtable
 #
 #
-# 05083 is the last used one
+# 05084 is the last used one
 #
 #
 % \section{Symbol handling}
 % \section{Symbol handling}
 % This section lists all the messages that concern the handling of symbols.
 % This section lists all the messages that concern the handling of symbols.
@@ -1977,11 +2028,17 @@ sym_e_objc_formal_class_not_resolved=05080_E_Die vollst
 % of the class to be in scope.
 % of the class to be in scope.
 sym_e_interprocgoto_into_init_final_code_not_allowed=05081_E_Gotos in die 'initialization'- oder 'finalization'-Bl”cke einer Unit sind nicht erlaubt
 sym_e_interprocgoto_into_init_final_code_not_allowed=05081_E_Gotos in die 'initialization'- oder 'finalization'-Bl”cke einer Unit sind nicht erlaubt
 % Gotos into initialization or finalization blockse of units are not allowed.
 % Gotos into initialization or finalization blockse of units are not allowed.
-sym_e_external_class_name_mismatch1=05082=E_Ungltiger externer Name "$1" fr die formale Klasse "$2"
-sym_e_external_class_name_mismatch2=05083=E_Hierhin muss die vollst„ndige Klassendefinition mit externem Namen "$1"
+sym_e_external_class_name_mismatch1=05082_E_Ungltiger externer Name "$1" fr die formale Klasse "$2"
+sym_e_external_class_name_mismatch2=05083_E_Hierhin muss die vollst„ndige Klassendefinition mit externem Namen "$1"
 % When a class is declared using a formal external definition, the actual external
 % When a class is declared using a formal external definition, the actual external
 % definition (if any) must specify the same external name as the formal definition
 % definition (if any) must specify the same external name as the formal definition
 % (since both definitions refer to the same actual class type).
 % (since both definitions refer to the same actual class type).
+sym_w_library_overload=05084_W_M”glicher Bibliothekenkonflikt: Das Symbol "$1" aus Bibliothek "$2" wurde auch in Bibliothek "$3" gefunden
+% Some OS do not have library specific namespaces, for those
+% OS, the function declared as "external 'libname' name 'funcname'",
+% the 'libname' part is only a hint, funcname might also be loaded
+% by another library. This warning appears if 'funcname' is used twice
+% with two different library names.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -2286,7 +2343,7 @@ asmr_w_id_supposed_external=07072_W_Bezeichner $1 ist vermutlich External
 % problems at link time if the symbol is not defined anywhere.
 % problems at link time if the symbol is not defined anywhere.
 asmr_e_string_not_allowed_as_const=07073_E_Strings sind als Konstanten unzul„ssig
 asmr_e_string_not_allowed_as_const=07073_E_Strings sind als Konstanten unzul„ssig
 % Character strings are not allowed as constants.
 % Character strings are not allowed as constants.
-asmr_e_no_var_type_specified=07074_Typ der Variablen nicht angegeben
+asmr_e_no_var_type_specified=07074_E_Typ der Variablen nicht angegeben
 % The syntax expects a type idenfitifer after the dot, but
 % The syntax expects a type idenfitifer after the dot, but
 % none was found.
 % none was found.
 asmr_w_assembler_code_not_returned_to_text=07075_E_Assemblercode kehrt nicht zum Text zurck
 asmr_w_assembler_code_not_returned_to_text=07075_E_Assemblercode kehrt nicht zum Text zurck
@@ -2388,14 +2445,14 @@ asmr_e_mixing_regtypes=07108_E_Alle Register in einem Registerset mssen in T und
 asmr_e_empty_regset=07109_E_Ein Registerset kann nicht leer sein
 asmr_e_empty_regset=07109_E_Ein Registerset kann nicht leer sein
 % Instructions on the ARM architecture that take a register set as argument require that such a set
 % Instructions on the ARM architecture that take a register set as argument require that such a set
 % contains at least one register.
 % contains at least one register.
-
 asmr_w_useless_got_for_local=07110_W_@GOTPCREL ist nutzlos und bei lokalen Symbole m”glicherweise gef„hrlich
 asmr_w_useless_got_for_local=07110_W_@GOTPCREL ist nutzlos und bei lokalen Symbole m”glicherweise gef„hrlich
 % The use of @GOTPCREL supposes an extra indirection that is
 % The use of @GOTPCREL supposes an extra indirection that is
 % not present if the symbol is local, which might lead to wrong asembler code
 % not present if the symbol is local, which might lead to wrong asembler code
+
 #
 #
 # Assembler/binary writers
 # Assembler/binary writers
 #
 #
-# 08021 is the last used one
+# 08022 is the last used one
 #
 #
 asmw_f_too_many_asm_files=08000_F_Zu viele Assembler-Dateien
 asmw_f_too_many_asm_files=08000_F_Zu viele Assembler-Dateien
 % With smartlinking enabled, there are too many assembler
 % With smartlinking enabled, there are too many assembler
@@ -2422,6 +2479,11 @@ asmw_e_first_defined_label=08018_E_Asm: First beginnt hier
 asmw_e_invalid_register=08019_E_Asm: Ungltiges Register $1
 asmw_e_invalid_register=08019_E_Asm: Ungltiges Register $1
 asmw_e_16bit_32bit_not_supported=08020_E_Asm: 16 oder 32 Bit Referenzen werden nicht untersttzt
 asmw_e_16bit_32bit_not_supported=08020_E_Asm: 16 oder 32 Bit Referenzen werden nicht untersttzt
 asmw_e_64bit_not_supported=08021_E_Asm: 64 Bit Operanden werden nicht untersttzt
 asmw_e_64bit_not_supported=08021_E_Asm: 64 Bit Operanden werden nicht untersttzt
+asmw_e_bad_reg_with_rex=08022_E_Asm: AH,BH,CH oder DH k”nnen nicht in einer Instruktion verwendt werden, die den Prefix REX ben”tigt
+% x86_64 only: instruction encoding of this platform does not allow using
+% 8086 high byte registers (AH,BH,CH or DH) together with REX prefix in a single instruction.
+% The REX prefix is required whenever the instruction operand size is 64 bits, or
+% when it uses one of extended x86_64 registers (R8-R15 or XMM8-XMM15).
 
 
 #
 #
 # Executing linker/assembler
 # Executing linker/assembler
@@ -2991,7 +3053,7 @@ wpo_cant_create_feedback_file=12019_E_Die angegebene Feedback-Eingabe-Datei "$1"
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler Version $FPCFULLVERSION [$FPCDATE] fr $FPCTARGET
 Free Pascal Compiler Version $FPCFULLVERSION [$FPCDATE] fr $FPCTARGET
-Copyright (c) 1993-2011 Florian Kl„mpfl und andere
+Copyright (c) 1993-2012 Florian Kl„mpfl und andere
 ]
 ]
 
 
 #
 #
@@ -3078,7 +3140,12 @@ option_help_pages=11025_[
 3*2Acoff_COFF (Go32v2) mit Hilfe des internen Schreibers
 3*2Acoff_COFF (Go32v2) mit Hilfe des internen Schreibers
 3*2Apecoff_PE_COFF (Win32) mit Hilfe des internen Schreibers
 3*2Apecoff_PE_COFF (Win32) mit Hilfe des internen Schreibers
 4*2Aas_Assembliere mit Hilfe von GNU AS
 4*2Aas_Assembliere mit Hilfe von GNU AS
-6*2Aas_Unix o-file mit Hilfe von GNU AS
+4*2Agas_Assembliere mit Hilfe von GNU GAS
+4*2Agas-darwin_Assembliere darwin Mach-O64 mit Hilfe von GNU GAS
+4*2Amasm_Win64 Object Datei mit Hilfe von ml64 (Microsoft)
+4*2Apecoff_PE-COFF (Win64) mit Hilfe des internen Writer
+4*2Aelf_ELF (Linux-64bit) mit Hilfe des internen Writer
+6*2Aas_Unix o-Datei mit Hilfe von GNU AS
 6*2Agas_GNU Motorola Assembler
 6*2Agas_GNU Motorola Assembler
 6*2Amit_MIT Syntax (old GAS)
 6*2Amit_MIT Syntax (old GAS)
 6*2Amot_Standard Motorola Assembler
 6*2Amot_Standard Motorola Assembler
@@ -3214,6 +3281,7 @@ S*2Aas_Assembliere mit Hilfe von GNU AS
 **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp)
 **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp)
 **2Ss_Konstruktor- und Destruktorname mssen "Init" und "Done" sein
 **2Ss_Konstruktor- und Destruktorname mssen "Init" und "Done" sein
 **2Sx_Exception Schlsselw”rter einschalten (Voreinstellung in Delphi/ObjFPC Moden)
 **2Sx_Exception Schlsselw”rter einschalten (Voreinstellung in Delphi/ObjFPC Moden)
+**2Sy_@<pointer> gibt einen typisierten Pointer zurck, genau wie $T+
 **1s_Rufe weder Assembler noch Linker auf (nur mit -a)
 **1s_Rufe weder Assembler noch Linker auf (nur mit -a)
 **2sh_Erzeuge Script um auf dem Host zu linken
 **2sh_Erzeuge Script um auf dem Host zu linken
 **2st_Erzeuge Script um auf dem Zielsystem zu linken
 **2st_Erzeuge Script um auf dem Zielsystem zu linken
@@ -3271,41 +3339,56 @@ S*2Tlinux_Linux
 **2*_    Dateinamen den vollst„ndigen  v : Schreibe fpcdebug.txt mit 
 **2*_    Dateinamen den vollst„ndigen  v : Schreibe fpcdebug.txt mit 
 **2*_    Pfad                              ganz viel Information
 **2*_    Pfad                              ganz viel Information
 **2*_m<x>,<y> : Zeige die Meldungen mit den Nummern <x> und <y> nicht
 **2*_m<x>,<y> : Zeige die Meldungen mit den Nummern <x> und <y> nicht
-3*1W<x>_Ziel-spezifische Optionen (Ziele)
-A*1W<x>_Ziel-spezifische Optionen (Ziele)
-P*1W<x>_Ziel-spezifische Optionen (Ziele)
-p*1W<x>_Ziel-spezifische Optionen (Ziele)
+**1W<x>_Spezifiziere ein natives Programm (Windows)
+3*2WA_Spezifiziere ein natives Programm (Windows)
+4*2WA_Spezifiziere ein natives Programm (Windows)
+A*2WA_Spezifiziere ein natives Programm (Windows)
 3*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 3*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 P*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 P*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 p*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 p*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
-3*2WB_Erzeuge ein relozierbares Image (Windows)
+A*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
+4*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
+3*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
+3*2WBxxxx_Setze die Imagebasis auf xxxx (Windows, Symbian)
+4*2WB_Erzeuge ein relozierbares Image (Windows)
+4*2WBxxxx_Setze die Imagebasis auf xxxx (Windows, Symbian)
 A*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
 A*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
+A*2WBxxxx_Setze die Imagebasis auf xxxx (Windows)
 3*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
 3*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
+4*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
 A*2WC_Spezifiziere "console type application" (Windows)
 A*2WC_Spezifiziere "console type application" (Windows)
 P*2WC_Spezifiziere "console type application" (Classic Mac OS)
 P*2WC_Spezifiziere "console type application" (Classic Mac OS)
 3*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 3*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
+4*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 A*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 A*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 3*2We_Benutze externe Resourcen (Darwin)
 3*2We_Benutze externe Resourcen (Darwin)
 4*2We_Benutze externe Resourcen (Darwin)
 4*2We_Benutze externe Resourcen (Darwin)
 A*2We_Benutze externe Resourcen (Darwin)
 A*2We_Benutze externe Resourcen (Darwin)
 P*2We_Benutze externe Resourcen (Darwin)
 P*2We_Benutze externe Resourcen (Darwin)
-p*2We_Benutze externe resoResourcenurces (Darwin)
+p*2We_Benutze externe Resourcen (Darwin)
 3*2WF_Spezifiziere "full-screen type application" (EMX, OS/2)
 3*2WF_Spezifiziere "full-screen type application" (EMX, OS/2)
 3*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
 3*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
+4*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
 A*2WG_Spezifiziere "graphic type application" (Windows)
 A*2WG_Spezifiziere "graphic type application" (Windows)
 P*2WG_Spezifiziere "graphic type application" (Classic Mac OS)
 P*2WG_Spezifiziere "graphic type application" (Classic Mac OS)
 3*2Wi_Benutze interne Resourcen (Darwin)
 3*2Wi_Benutze interne Resourcen (Darwin)
+4*2Wi_Benutze interne Resourcen (Darwin)
+A*2Wi_Benutze interne Resourcen (Darwin)
 P*2Wi_Benutze interne Resourcen (Darwin)
 P*2Wi_Benutze interne Resourcen (Darwin)
 p*2Wi_Benutze interne Resourcen (Darwin)
 p*2Wi_Benutze interne Resourcen (Darwin)
+3*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
+4*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
+A*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
 3*2WN_Erzeuge keinen "relocation code" (notwendig fr debugging) (Windows)
 3*2WN_Erzeuge keinen "relocation code" (notwendig fr debugging) (Windows)
+4*2WN_Erzeuge keinen "relocation code" (notwendig fr debugging) (Windows)
 A*2WN_Erzeuge keinen "relocation code" (notwendig fr debugging) (Windows)
 A*2WN_Erzeuge keinen "relocation code" (notwendig fr debugging) (Windows)
+A*2Wpxxxx_Spezifiziere den Kontrollertyp, m”gliche Werte liefert fpc -i
+V*2Wpxxxx_Spezifiziere den Kontrollertyp, m”gliche Werte liefert fpc -i
 3*2WR_Erzeuge "relocation code" (Windows)
 3*2WR_Erzeuge "relocation code" (Windows)
+4*2WR_Erzeuge "relocation code" (Windows)
 A*2WR_Erzeuge "relocation code" (Windows)
 A*2WR_Erzeuge "relocation code" (Windows)
 P*2WF_Spezifiziere "MPW tool type application" (Classic Mac OS)
 P*2WF_Spezifiziere "MPW tool type application" (Classic Mac OS)
-3*2WX_Erm”gliche den executable stack (Linux)
-A*2WX_Erm”gliche den executable stack (Linux)
-p*2WX_Erm”gliche den executable stack (Linux)
-P*2WX_Erm”gliche den executable stack (Linux)
+**2WX_Erm”gliche den executable stack (Linux)
 **1X_Programm-Optionen:
 **1X_Programm-Optionen:
 **2Xc_šbergebe --shared an den Linker (nur Unix)
 **2Xc_šbergebe --shared an den Linker (nur Unix)
 **2Xd_Den Standard Bibliotheks-Suchpfad NICHT nutzen (ben”tigt fr cross compile)
 **2Xd_Den Standard Bibliotheks-Suchpfad NICHT nutzen (ben”tigt fr cross compile)

+ 1 - 1
compiler/msg/errorda.msg

@@ -2207,7 +2207,7 @@ option_config_is_dir=11040_F_Konfigurationsfilen $1 er et directory
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] til $FPCTARGET
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] til $FPCTARGET
-Copyright (c) 1993-2011 Florian Klaempfl
+Copyright (c) 1993-2012 Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 134 - 50
compiler/msg/errordu.msg

@@ -3,7 +3,7 @@
 #   Latest updates contributed by Karl-Michael Schindler aka mischi
 #   Latest updates contributed by Karl-Michael Schindler aka mischi
 #   <karl-michael.schindler at web.de>
 #   <karl-michael.schindler at web.de>
 #
 #
-#   Based on errore.msg of SVN revision 16783
+#   Based on errore.msg of SVN revision 18275
 #
 #
 #   This file is part of the Free Pascal Compiler
 #   This file is part of the Free Pascal Compiler
 #   Copyright (c) 1998-2010 by the Free Pascal Development team
 #   Copyright (c) 1998-2010 by the Free Pascal Development team
@@ -49,7 +49,7 @@
 #
 #
 # General
 # General
 #
 #
-# 01023 is the last used one
+# 01025 is the last used one
 #
 #
 # BeginOfTeX
 # BeginOfTeX
 % \section{General compiler messages}
 % \section{General compiler messages}
@@ -79,11 +79,11 @@ general_t_includepath=01005_T_Der Includepfad ist: $1
 general_t_librarypath=01006_T_Der Bibliothekspfad ist: $1
 general_t_librarypath=01006_T_Der Bibliothekspfad ist: $1
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % looks for the libraries. You can set this path with the \var{-Fl} option.
 % looks for the libraries. You can set this path with the \var{-Fl} option.
-general_t_objectpath=01007_T_Der Objektdateienpfad: $1
+general_t_objectpath=01007_T_Der Objektdateienpfad ist: $1
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % When the \var{-vt} switch is used, this line tells you where the compiler
 % looks for object files you link in (files used in \var{\{\$L xxx\}} statements).
 % looks for object files you link in (files used in \var{\{\$L xxx\}} statements).
 % You can set this path with the \var{-Fo} option.
 % You can set this path with the \var{-Fo} option.
-general_i_abslines_compiled=01008_I_$1 Zeilen übersetzt, $2 Sekunden$3
+general_i_abslines_compiled=01008_I_$1 Zeilen übersetzt, $2 Sekunden $3
 % When the \var{-vi} switch is used, the compiler reports the number
 % When the \var{-vi} switch is used, the compiler reports the number
 % of lines compiled, and the time it took to compile them (real time,
 % of lines compiled, and the time it took to compile them (real time,
 % not program time).
 % not program time).
@@ -128,6 +128,10 @@ general_i_number_of_hints=01022_I_$1 Hinweis(e) ausgegeben
 % Total number of hints issued during compilation.
 % Total number of hints issued during compilation.
 general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 % Total number of notes issued during compilation.
 % Total number of notes issued during compilation.
+general_f_ioerror=01024_F_I/O Fehler: $1
+% During compilation an I/O error happened which allows no further compilation.
+general_f_oserror=01025_F_Betriebsystemfehler: $1
+% During compilation an operanting system error happened which allows no further compilation.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -135,7 +139,7 @@ general_i_number_of_notes=01023_I_$1 Anmerkung(en) ausgegeben
 #
 #
 # Scanner
 # Scanner
 #
 #
-# 02087 is the last used one
+# 02088 is the last used one
 #
 #
 % \section{Scanner messages.}
 % \section{Scanner messages.}
 % This section lists the messages that the scanner emits. The scanner takes
 % This section lists the messages that the scanner emits. The scanner takes
@@ -152,7 +156,7 @@ scan_f_end_of_file=02000_F_Unerwartetes Dateiende
 % \item An include file ends in the middle of a statement.
 % \item An include file ends in the middle of a statement.
 % \item A comment was not closed.
 % \item A comment was not closed.
 % \end{itemize}
 % \end{itemize}
-scan_f_string_exceeds_line=02001_F_Zeichenkette geht über Zeilenende hinaus
+scan_f_string_exceeds_line=02001_F_Zeichenkette geht über das Zeilenende hinaus
 % You forgot probably to include the closing ' in a string, so it occupies
 % You forgot probably to include the closing ' in a string, so it occupies
 % multiple lines.
 % multiple lines.
 scan_f_illegal_char=02002_F_Unzulässiges Zeichen "$1" ($2)
 scan_f_illegal_char=02002_F_Unzulässiges Zeichen "$1" ($2)
@@ -217,7 +221,7 @@ scan_h_user_defined=02026_H_Benutzerdefiniert: $1
 % A user defined hint was encountered. See also the \progref
 % A user defined hint was encountered. See also the \progref
 scan_i_user_defined=02027_I_Benutzerdefiniert: $1
 scan_i_user_defined=02027_I_Benutzerdefiniert: $1
 % User defined information was encountered. See also the \progref
 % User defined information was encountered. See also the \progref
-scan_e_keyword_cant_be_a_macro=02028_E_Ein Makro, welches den selben Namen wie ein Schlüsselwort hat, wird ignoriert
+scan_e_keyword_cant_be_a_macro=02028_E_Ein Makro, das den selben Namen wie ein Schlüsselwort hat, wird ignoriert
 % You cannot redefine keywords with macros.
 % You cannot redefine keywords with macros.
 scan_f_macro_buffer_overflow=02029_F_Makropufferüberlauf während des Lesens oder Expandierens eines Makros
 scan_f_macro_buffer_overflow=02029_F_Makropufferüberlauf während des Lesens oder Expandierens eines Makros
 % Your macro or it's result was too long for the compiler.
 % Your macro or it's result was too long for the compiler.
@@ -296,7 +300,7 @@ scan_w_include_env_not_found=02054_W_$1 ist keine Umgebungsvariable
 % be replaced by an empty string instead.
 % be replaced by an empty string instead.
 scan_e_invalid_maxfpureg_value=02055_E_Nicht erlaubter Wert für MAXFPUREGISTER-Direktive
 scan_e_invalid_maxfpureg_value=02055_E_Nicht erlaubter Wert für MAXFPUREGISTER-Direktive
 % Valid values for this directive are 0..8 and NORMAL/DEFAULT.
 % Valid values for this directive are 0..8 and NORMAL/DEFAULT.
-scan_w_only_one_resourcefile_supported=02056_W_Nur ein Resourcedatei wird vom aktuellen Zielbetriebssystem unterstützt
+scan_w_only_one_resourcefile_supported=02056_W_Vom aktuellen Zielbetriebssystem wird nur eine Resourcedatei unterstützt
 % Only one resource file can be supported for this target - this is the case of
 % Only one resource file can be supported for this target - this is the case of
 % OS/2 (EMX) currently. The first one found is used, the others are discarded.
 % OS/2 (EMX) currently. The first one found is used, the others are discarded.
 scan_w_macro_support_turned_off=02057_W_Makrounterstützung ist ausgeschaltet
 scan_w_macro_support_turned_off=02057_W_Makrounterstützung ist ausgeschaltet
@@ -329,11 +333,11 @@ scan_e_mode_switch_not_allowed=02067_E_Der Modus Umschalter "$1" ist hier nicht
 % a mode switch occurs after UNIT.
 % a mode switch occurs after UNIT.
 scan_e_error_macro_undefined=02068_E_Die Compile time Variable oder das Makro "$1" ist nicht definiert.
 scan_e_error_macro_undefined=02068_E_Die Compile time Variable oder das Makro "$1" ist nicht definiert.
 % Thus the conditional compile time expression cannot be evaluated. Only in mode MacPas.
 % Thus the conditional compile time expression cannot be evaluated. Only in mode MacPas.
-scan_e_utf8_bigger_than_65535=02069_E_Der UTF-8 Kode ist grösser als 65535
+scan_e_utf8_bigger_than_65535=02069_E_Der UTF-8 Code ist grösser als 65535
 % \fpc handles UTF-8 strings internally as widestrings, i.e. the char codes are limited to 65535.
 % \fpc handles UTF-8 strings internally as widestrings, i.e. the char codes are limited to 65535.
 scan_e_utf8_malformed=02070_E_Ungültige UTF-8 Zeichenkette
 scan_e_utf8_malformed=02070_E_Ungültige UTF-8 Zeichenkette
 % The given string isn't a valid UTF-8 string.
 % The given string isn't a valid UTF-8 string.
-scan_c_switching_to_utf8=02071_C_UTF-8 Signatur gefunden, verwende UTF-8 Kode
+scan_c_switching_to_utf8=02071_C_UTF-8 Signatur gefunden, verwende UTF-8 Code
 % The compiler found a UTF-8 encoding signature (\$ef, \$bb, \$bf) at the beginning of a file,
 % The compiler found a UTF-8 encoding signature (\$ef, \$bb, \$bf) at the beginning of a file,
 % so it interprets it as a UTF-8 file.
 % so it interprets it as a UTF-8 file.
 scan_e_compile_time_typeerror=02072_E_Compile time Ausdruck: Erwartete $1 aber erhielt $2 bei $3
 scan_e_compile_time_typeerror=02072_E_Compile time Ausdruck: Erwartete $1 aber erhielt $2 bei $3
@@ -371,6 +375,9 @@ scan_w_multiple_main_name_overrides=02086_W_Der Name der "main" Prozedur wird me
 % name will be used.
 % name will be used.
 scanner_w_illegal_warn_identifier=02087_W_Ungültige Bezeichner "$1" für die $WARN Direktive
 scanner_w_illegal_warn_identifier=02087_W_Ungültige Bezeichner "$1" für die $WARN Direktive
 % Identifier is not known by a \var{\{\$WARN\}} compiler directive.
 % Identifier is not known by a \var{\{\$WARN\}} compiler directive.
+scanner_e_illegal_alignment_directive=02088_E_Ungültige "alignment" Direktive
+% The alignment directive is not valid. Either the alignment type is not known or the alignment
+% value is not a power of two.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -378,7 +385,7 @@ scanner_w_illegal_warn_identifier=02087_W_Ungültige Bezeichner "$1" für die $W
 #
 #
 # Parser
 # Parser
 #
 #
-# 03304 is the last used one
+# 03313 is the last used one
 #
 #
 % \section{Parser messages}
 % \section{Parser messages}
 % This section lists all parser messages. The parser takes care of the
 % This section lists all parser messages. The parser takes care of the
@@ -403,7 +410,7 @@ parser_e_export_invalid_index=03010_E_Ungültiger Index for exportierte Funktion
 % DLL function index must be in the range \var{1..\$FFFF}.
 % DLL function index must be in the range \var{1..\$FFFF}.
 parser_w_parser_reloc_no_debug=03011_W_Für relozierbare DLL oder ausführbare Datei $1 funktionieren keine Debug-Information, deaktiviert.
 parser_w_parser_reloc_no_debug=03011_W_Für relozierbare DLL oder ausführbare Datei $1 funktionieren keine Debug-Information, deaktiviert.
 % It is currently not possible to include debug information in a relocatable DLL.
 % It is currently not possible to include debug information in a relocatable DLL.
-parser_w_parser_win32_debug_needs_WN=03012_W_Um Win32-Code debuggen zu können müssen die Relozierungen mit -WN option abgeschaltet werden.
+parser_w_parser_win32_debug_needs_WN=03012_W_Um Win32-Code debuggen zu können, müssen die Relozierungen mit -WN option abgeschaltet werden.
 % Stabs debug info is wrong for relocatable DLL or EXES. Use -WN
 % Stabs debug info is wrong for relocatable DLL or EXES. Use -WN
 % if you want to debug win32 executables.
 % if you want to debug win32 executables.
 parser_e_constructorname_must_be_init=03013_E_Konstruktor-Name muss INIT sein
 parser_e_constructorname_must_be_init=03013_E_Konstruktor-Name muss INIT sein
@@ -928,9 +935,9 @@ parser_e_no_access_specifier_in_interfaces=03172_E_Zugriffsbezeichner können in
 % The access specifiers \var{public}, \var{private}, \var{protected} and
 % The access specifiers \var{public}, \var{private}, \var{protected} and
 % \var{published} can't be used in interfaces, Objective-C protocols and categories because all methods
 % \var{published} can't be used in interfaces, Objective-C protocols and categories because all methods
 % of an interface/protocol/category must be public.
 % of an interface/protocol/category must be public.
-parser_e_no_vars_in_interfaces=03173_E_Ein Interface, ein Objective-C Protokoll oder eine Kategorie darf keine Felder enthalten
-% Declarations of fields are not allowed in interfaces and Objective-C protocols and categories.
-% An interface/protocol/category can contain only methods and properties with method read/write specifiers.
+parser_e_no_vars_in_interfaces=03173_E_Ein Interface, ein Helfer, ein Objective-C Protokoll oder eine Kategorie darf keine Felder enthalten
+% Declarations of fields are not allowed in interfaces, helpers and Objective-C protocols and categories.
+% An interface/helper/protocol/category can contain only methods and properties with method read/write specifiers.
 parser_e_no_local_proc_external=03174_E_Eine lokale Prozedur kann nicht als EXTERNAL deklariert werden
 parser_e_no_local_proc_external=03174_E_Eine lokale Prozedur kann nicht als EXTERNAL deklariert werden
 % Declaring local procedures as external is not possible. Local procedures
 % Declaring local procedures as external is not possible. Local procedures
 % get hidden parameters that will make the chance of errors very high.
 % get hidden parameters that will make the chance of errors very high.
@@ -1275,9 +1282,12 @@ parser_e_objc_message_name_changed=03275_E_Der Nachrichtenname "$1" in der verer
 parser_e_no_objc_unique=03276_E_Noch können eindeutige Kopien von Objective-C Typen nicht erstellt werden
 parser_e_no_objc_unique=03276_E_Noch können eindeutige Kopien von Objective-C Typen nicht erstellt werden
 % Duplicating an Objective-C type using \var{type x = type y;} is not yet supported. You may be able to
 % Duplicating an Objective-C type using \var{type x = type y;} is not yet supported. You may be able to
 % obtain the desired effect using \var{type x = objcclass(y) end;} instead.
 % obtain the desired effect using \var{type x = objcclass(y) end;} instead.
-parser_e_no_category_as_types=03277_E_Objective-C Kategorien können nicht als Typen benutzt werden
-% It is not possible to declare a variable as an instance of an Objective-C category. A
-% category adds methods to the scope of an existing class, but does not define a type by itself.
+parser_e_no_category_as_types=03277_E_Objective-C Kategorien und Object-Pascal Klassenhelfer können nicht als Typen benutzt werden
+% It is not possible to declare a variable as an instance of an Objective-C
+% category or an Object Pascal class helper. A category/class helper adds
+% methods to the scope of an existing class, but does not define a type by
+% itself. An exception of this rule is when inheriting an Object Pascal class
+% helper from another class helper.
 parser_e_no_category_override=03278_E_Kategorien überschreiben Methoden nicht, sondern ersetzen sie. "reintroduce" benutzen
 parser_e_no_category_override=03278_E_Kategorien überschreiben Methoden nicht, sondern ersetzen sie. "reintroduce" benutzen
 parser_e_must_use_reintroduce_objc=03279_E_Ersetzte Methoden können in Objective-C nur wieder eingeführt werden, füge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_e_must_use_reintroduce_objc=03279_E_Ersetzte Methoden können in Objective-C nur wieder eingeführt werden, füge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_h_should_use_reintroduce_objc=03280_H_Ersetzte Methoden können in Objective-C nur wieder eingeführt werden, füge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
 parser_h_should_use_reintroduce_objc=03280_H_Ersetzte Methoden können in Objective-C nur wieder eingeführt werden, füge "reintroduce" hinzu (Ersetzte Methode ist in $1 definiert)
@@ -1363,19 +1373,44 @@ parser_e_forward_protocol_declaration_must_be_resolved=03298_E_Vorwärts-Deklara
 % where \var{MyProtocol} is declared but not defined.
 % where \var{MyProtocol} is declared but not defined.
 parser_e_no_record_published=03299_E_Record -Typen können keine öffentlichen Abschnitte (published sections) haben
 parser_e_no_record_published=03299_E_Record -Typen können keine öffentlichen Abschnitte (published sections) haben
 % Published sections can be used only inside classes.
 % Published sections can be used only inside classes.
-parser_e_no_destructor_in_records=03300_E_Destruktoren sind in Records nicht erlaubt
-% Destructor declarations aren't allowed in records.
+parser_e_no_destructor_in_records=03300_E_Destruktoren sind in Records und Helfern nicht erlaubt
+% Destructor declarations aren't allowed in records or helpers.
 parser_e_class_methods_only_static_in_records=03301_E_Klassenmethoden müssen in Records statisch sein
 parser_e_class_methods_only_static_in_records=03301_E_Klassenmethoden müssen in Records statisch sein
 % Class methods declarations aren't allowed in records without static modifier.
 % Class methods declarations aren't allowed in records without static modifier.
 % Records have no inheritance and therefore non static class methods have no sence for them.
 % Records have no inheritance and therefore non static class methods have no sence for them.
-parser_e_no_constructor_in_records=03302_E_Konstruktoren sind in Records nicht erlaubt
-% Constructor declarations aren't allowed in records.
+parser_e_no_constructor_in_records=03302_E_Konstruktoren sind in Records und Recordhelfern nicht erlaubt
+% Constructor declarations aren't allowed in records or record helpers.
 parser_e_at_least_one_argument_must_be_of_type=03303_E_Entweder das Ergebnis oder mindestens ein Parameter müssen vom Typ "$1" sein
 parser_e_at_least_one_argument_must_be_of_type=03303_E_Entweder das Ergebnis oder mindestens ein Parameter müssen vom Typ "$1" sein
 % It is required that either the result of the routine or at least one of its parameters be of the specified type.
 % It is required that either the result of the routine or at least one of its parameters be of the specified type.
 % For example class operators either take an instance of the structured type in which they are defined, or they return one.
 % For example class operators either take an instance of the structured type in which they are defined, or they return one.
 parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter können initialization/finalization erfordern - Sie können deshalb nicht in varianten Rekords verwendet werden
 parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter können initialization/finalization erfordern - Sie können deshalb nicht in varianten Rekords verwendet werden
 % Type parameters may be specialized with types which (e.g. \var{ansistring}) need initialization/finalization
 % Type parameters may be specialized with types which (e.g. \var{ansistring}) need initialization/finalization
 % code which is implicitly generated by the compiler. 
 % code which is implicitly generated by the compiler. 
+parser_e_externals_no_section=03305_E_"external" deklarierte Variablen dürfen nicht in einer "custom section" sein
+% A section directive is not valid for variables being declared as external.
+parser_e_section_no_locals=03306_E_Nicht-statische und nicht-globale Variablen dürfen keine Direktive "section" haben
+% A variable placed in a custom section is always statically allocated so it must be either a static or global variable.
+parser_e_not_allowed_in_helper=03307_E_"$1" ist in Helfertypen nicht erlaubt
+% Some directives and specifiers like "virtual", "dynamic", "override" aren't
+% allowed inside helper types in mode ObjFPC (they are ignored in mode Delphi),
+% because they have no meaning within helpers. Also "abstract" isn't allowed in
+% either mode.
+parser_e_no_class_constructor_in_helpers=03308_E_Klassenkonstruktoren sind in Helfern nicht erlaubt
+% Class constructor declarations aren't allowed in helpers.
+parser_e_inherited_not_in_record=03309_E_"inherited" ist in einem Record nicht erlaubt
+% As records don't suppport inheritance the use of "inherited" is prohibited for
+% these as well as for record helpers (in mode "Delphi" only).
+parser_e_no_types_in_local_anonymous_records=03310_E_Typ-Deklarationen sind in lokalen oder anonymen Records nicht erlaubt
+% Records with types must be defined globally. Types cannot be defined inside records which are defined in a
+% procedure or function or in anonymous records.
+parser_e_duplicate_implements_clause=03311_E_Zweifacher "implements"-Term für das Interface "$1"
+% A class may delegate an interface using the "implements" clause only to a single property. Delegating it multiple times
+% is a error.
+parser_e_mapping_no_implements=03312_E_Das Interface "$1" kann nicht durch "$2" delegiert werden. Die Methode ist bereits aufgelöst
+% Method resolution clause maps a method of an interface to a method of the current class. Therefore the current class
+% has to implement the interface directly. Delegation is not possible.
+parser_e_implements_no_mapping=03313_E_Das Interface "$1" kann keine Methoden-Auflösung haben, "$2" delegiert es bereits
+% Method resoulution is only possible for interfaces that are implemented directly, not by delegation.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -1383,7 +1418,7 @@ parser_e_cant_use_type_parameters_here=03304_E_Typ-Parameter können initializat
 #
 #
 # Type Checking
 # Type Checking
 #
 #
-# 04098 is the last used one
+# 04103 is the last used one
 #
 #
 % \section{Type checking errors}
 % \section{Type checking errors}
 % This section lists all errors that can occur when type checking is
 % This section lists all errors that can occur when type checking is
@@ -1570,14 +1605,16 @@ type_e_type_is_not_completly_defined=04042_E_Typ "$1" ist nicht vollständig def
 type_w_string_too_long=04043_W_String literal hat mehr Zeichen als short string length
 type_w_string_too_long=04043_W_String literal hat mehr Zeichen als short string length
 % The size of the constant string, which is assigned to a shortstring,
 % The size of the constant string, which is assigned to a shortstring,
 % is longer than the maximum size of the shortstring (255 characters).
 % is longer than the maximum size of the shortstring (255 characters).
-type_w_signed_unsigned_always_false=04044_W_Wegen des Bereichs der Werte ist das Vergleichsergebnis immer falsch
-% There is a comparison between an unsigned value and a signed constant which is
-% less than zero. Because of type promotion, the statement will always evaluate to
-% false. Explicitly typecast the constant to the correct range to avoid this problem.
-type_w_signed_unsigned_always_true=04045_W_Wegen des Bereichs der Werte ist das Vergleichsergebnis immer richtig
-% There is a comparison between an unsigned value and a signed constant which is
-% less than zero. Because of type promotion, the statement will always evaluate to
-% true. Explicitly typecast the constant to the correct range to avoid this problem.
+type_w_comparison_always_false=04044_W_Wegen der Bereiche der Konstanten und des Ausdrucks könnte das Vergleichsergebnis immer falsch sein
+% There is a comparison between a constant and an expression where the constant is out of the
+% valid range of values of the expression. Because of type promotion, the statement will always evaluate to
+% false. Explicitly typecast the constant or the expression to the correct range to avoid this warning
+% if you think the code is correct.
+type_w_comparison_always_true=04045_W_Wegen der Bereiche der Konstanten und des Ausdrucks könnte das Vergleichsergebnis immer richtig sein
+% There is a comparison between a constant and an expression where the constant is out of the
+% valid range of values of the expression. Because of type promotion, the statement will always evaluate to
+% true. Explicitly typecast the constant or the expression to the correct range to avoid this warning
+% if you think the code is correct.
 type_w_instance_with_abstract=04046_W_Konstruktion der Klasse "$1" mit der abstrakten Methode "$2"
 type_w_instance_with_abstract=04046_W_Konstruktion der Klasse "$1" mit der abstrakten Methode "$2"
 % An instance of a class is created which contains non-implemented abstract
 % An instance of a class is created which contains non-implemented abstract
 % methods. This will probably lead to a runtime error 211 in the code if that
 % methods. This will probably lead to a runtime error 211 in the code if that
@@ -1604,7 +1641,8 @@ type_e_constant_expr_expected=04052_E_Konstanter Ausdruck erwartet
 type_e_operator_not_supported_for_types=04053_E_Operation "$1" wird für die Typen "$2" und "$3" nicht unterstützt
 type_e_operator_not_supported_for_types=04053_E_Operation "$1" wird für die Typen "$2" und "$3" nicht unterstützt
 % The operation is not allowed for the supplied types.
 % The operation is not allowed for the supplied types.
 type_e_illegal_type_conversion=04054_E_Illegale Typ-Konversion: "$1" nach "$2"
 type_e_illegal_type_conversion=04054_E_Illegale Typ-Konversion: "$1" nach "$2"
-% When doing a type-cast, you must take care that the sizes of the variable and
+% When doing a type-cast, you must take care that the sizes of
+ the variable and
 % the destination type are the same.
 % the destination type are the same.
 type_h_pointer_to_longint_conv_not_portable=04055_H_Konversion zwischen ordinalen Typen und Zeigern ist nicht portierbar
 type_h_pointer_to_longint_conv_not_portable=04055_H_Konversion zwischen ordinalen Typen und Zeigern ist nicht portierbar
 % If you typecast a pointer to a longint (or vice-versa), this code will not compile
 % If you typecast a pointer to a longint (or vice-versa), this code will not compile
@@ -1664,7 +1702,7 @@ type_w_pointer_to_signed=04082_W_Die Konvertierung von Pointern in einen Integer
 % For example both \windows and \linux allow pointers in the range \$0000000 to \$bfffffff.
 % For example both \windows and \linux allow pointers in the range \$0000000 to \$bfffffff.
 % If you convert pointers to signed types, this can cause overflow and range check errors,
 % If you convert pointers to signed types, this can cause overflow and range check errors,
 % but also \$80000000 < \$7fffffff. This can cause random errors in code like "if p>q".
 % but also \$80000000 < \$7fffffff. This can cause random errors in code like "if p>q".
-type_interface_has_no_guid=04083_E_Interface Typ $1 hat keine gültige GUID
+type_e_interface_has_no_guid=04083_E_Interface Typ $1 hat keine gültige GUID
 % When applying the as-operator to an interface or class, the desired interface (i.e. the right operand of the
 % When applying the as-operator to an interface or class, the desired interface (i.e. the right operand of the
 % as-operator) must have a valid GUID.
 % as-operator) must have a valid GUID.
 type_e_invalid_objc_selector_name=04084_E_Ungültiger Objective-C-Selector-Name "$1"
 type_e_invalid_objc_selector_name=04084_E_Ungültiger Objective-C-Selector-Name "$1"
@@ -1731,6 +1769,20 @@ type_e_type_parameters_are_not_allowed_here=04097_E_Typ-Parameter sind für nich
 % Type parameters are only allowed for methods of generic classes, records or objects
 % Type parameters are only allowed for methods of generic classes, records or objects
 type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von "$1" unterscheidet sich vom der vorherigen Deklaration
 type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von "$1" unterscheidet sich vom der vorherigen Deklaration
 % Generic declaration does not match the previous declaration
 % Generic declaration does not match the previous declaration
+type_e_helper_type_expected=04099_E_Helfertyp erwartet
+% The compiler expected a \var{class helper} type.
+type_e_record_type_expected=04100_E_Recordtyp erwartet
+% The compiler expected a \var{record} type.
+type_e_class_helper_must_extend_subclass=04101_E_Abgeleitete Klassenhelfer müssen eine Unterklasse von "$1" oder die Klasse selbst erweitern
+% If a class helper inherits from another class helper the extended class must
+% extend either the same class as the parent class helper or a subclass of it
+type_e_record_helper_must_extend_same_record=04102_E_Abgeleitete Recordhelfer müssen "$1" erweitern
+% If a record helper inherits from another record helper it must extend the same
+% record that the parent record helper extended.
+type_e_procedures_return_no_value=04103_E_Ungültige Zuweisung, eine Prozedur gibt keinen Wert zurück
+% This error occurs when one tries to assign the result of a procedure or destructor call.
+% A procedure or destructor returns no value so this is not
+% possible.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -1738,7 +1790,7 @@ type_e_generic_declaration_does_not_match=04098_E_Die generische Deklaration von
 #
 #
 # Symtable
 # Symtable
 #
 #
-# 05083 is the last used one
+# 05084 is the last used one
 #
 #
 % \section{Symbol handling}
 % \section{Symbol handling}
 % This section lists all the messages that concern the handling of symbols.
 % This section lists all the messages that concern the handling of symbols.
@@ -1977,11 +2029,17 @@ sym_e_objc_formal_class_not_resolved=05080_E_Die vollständige Definition der fo
 % of the class to be in scope.
 % of the class to be in scope.
 sym_e_interprocgoto_into_init_final_code_not_allowed=05081_E_Gotos in die 'initialization'- oder 'finalization'-Blöcke einer Unit sind nicht erlaubt
 sym_e_interprocgoto_into_init_final_code_not_allowed=05081_E_Gotos in die 'initialization'- oder 'finalization'-Blöcke einer Unit sind nicht erlaubt
 % Gotos into initialization or finalization blockse of units are not allowed.
 % Gotos into initialization or finalization blockse of units are not allowed.
-sym_e_external_class_name_mismatch1=05082=E_Ungültiger externer Name "$1" für die formale Klasse "$2"
-sym_e_external_class_name_mismatch2=05083=E_Hierhin muss die vollständige Klassendefinition mit externem Namen "$1"
+sym_e_external_class_name_mismatch1=05082_E_Ungültiger externer Name "$1" für die formale Klasse "$2"
+sym_e_external_class_name_mismatch2=05083_E_Hierhin muss die vollständige Klassendefinition mit externem Namen "$1"
 % When a class is declared using a formal external definition, the actual external
 % When a class is declared using a formal external definition, the actual external
 % definition (if any) must specify the same external name as the formal definition
 % definition (if any) must specify the same external name as the formal definition
 % (since both definitions refer to the same actual class type).
 % (since both definitions refer to the same actual class type).
+sym_w_library_overload=05084_W_Möglicher Bibliothekenkonflikt: Das Symbol "$1" aus Bibliothek "$2" wurde auch in Bibliothek "$3" gefunden
+% Some OS do not have library specific namespaces, for those
+% OS, the function declared as "external 'libname' name 'funcname'",
+% the 'libname' part is only a hint, funcname might also be loaded
+% by another library. This warning appears if 'funcname' is used twice
+% with two different library names.
 %
 %
 % \end{description}
 % \end{description}
 # EndOfTeX
 # EndOfTeX
@@ -2286,7 +2344,7 @@ asmr_w_id_supposed_external=07072_W_Bezeichner $1 ist vermutlich External
 % problems at link time if the symbol is not defined anywhere.
 % problems at link time if the symbol is not defined anywhere.
 asmr_e_string_not_allowed_as_const=07073_E_Strings sind als Konstanten unzulässig
 asmr_e_string_not_allowed_as_const=07073_E_Strings sind als Konstanten unzulässig
 % Character strings are not allowed as constants.
 % Character strings are not allowed as constants.
-asmr_e_no_var_type_specified=07074_Typ der Variablen nicht angegeben
+asmr_e_no_var_type_specified=07074_E_Typ der Variablen nicht angegeben
 % The syntax expects a type idenfitifer after the dot, but
 % The syntax expects a type idenfitifer after the dot, but
 % none was found.
 % none was found.
 asmr_w_assembler_code_not_returned_to_text=07075_E_Assemblercode kehrt nicht zum Text zurück
 asmr_w_assembler_code_not_returned_to_text=07075_E_Assemblercode kehrt nicht zum Text zurück
@@ -2388,14 +2446,14 @@ asmr_e_mixing_regtypes=07108_E_Alle Register in einem Registerset müssen in T u
 asmr_e_empty_regset=07109_E_Ein Registerset kann nicht leer sein
 asmr_e_empty_regset=07109_E_Ein Registerset kann nicht leer sein
 % Instructions on the ARM architecture that take a register set as argument require that such a set
 % Instructions on the ARM architecture that take a register set as argument require that such a set
 % contains at least one register.
 % contains at least one register.
-
 asmr_w_useless_got_for_local=07110_W_@GOTPCREL ist nutzlos und bei lokalen Symbole möglicherweise gefährlich
 asmr_w_useless_got_for_local=07110_W_@GOTPCREL ist nutzlos und bei lokalen Symbole möglicherweise gefährlich
 % The use of @GOTPCREL supposes an extra indirection that is
 % The use of @GOTPCREL supposes an extra indirection that is
 % not present if the symbol is local, which might lead to wrong asembler code
 % not present if the symbol is local, which might lead to wrong asembler code
+
 #
 #
 # Assembler/binary writers
 # Assembler/binary writers
 #
 #
-# 08021 is the last used one
+# 08022 is the last used one
 #
 #
 asmw_f_too_many_asm_files=08000_F_Zu viele Assembler-Dateien
 asmw_f_too_many_asm_files=08000_F_Zu viele Assembler-Dateien
 % With smartlinking enabled, there are too many assembler
 % With smartlinking enabled, there are too many assembler
@@ -2422,6 +2480,11 @@ asmw_e_first_defined_label=08018_E_Asm: First beginnt hier
 asmw_e_invalid_register=08019_E_Asm: Ungültiges Register $1
 asmw_e_invalid_register=08019_E_Asm: Ungültiges Register $1
 asmw_e_16bit_32bit_not_supported=08020_E_Asm: 16 oder 32 Bit Referenzen werden nicht unterstützt
 asmw_e_16bit_32bit_not_supported=08020_E_Asm: 16 oder 32 Bit Referenzen werden nicht unterstützt
 asmw_e_64bit_not_supported=08021_E_Asm: 64 Bit Operanden werden nicht unterstützt
 asmw_e_64bit_not_supported=08021_E_Asm: 64 Bit Operanden werden nicht unterstützt
+asmw_e_bad_reg_with_rex=08022_E_Asm: AH,BH,CH oder DH können nicht in einer Instruktion verwendt werden, die den Prefix REX benötigt
+% x86_64 only: instruction encoding of this platform does not allow using
+% 8086 high byte registers (AH,BH,CH or DH) together with REX prefix in a single instruction.
+% The REX prefix is required whenever the instruction operand size is 64 bits, or
+% when it uses one of extended x86_64 registers (R8-R15 or XMM8-XMM15).
 
 
 #
 #
 # Executing linker/assembler
 # Executing linker/assembler
@@ -2991,7 +3054,7 @@ wpo_cant_create_feedback_file=12019_E_Die angegebene Feedback-Eingabe-Datei "$1"
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler Version $FPCFULLVERSION [$FPCDATE] für $FPCTARGET
 Free Pascal Compiler Version $FPCFULLVERSION [$FPCDATE] für $FPCTARGET
-Copyright (c) 1993-2011 Florian Klämpfl und andere
+Copyright (c) 1993-2012 Florian Klämpfl und andere
 ]
 ]
 
 
 #
 #
@@ -3078,6 +3141,11 @@ option_help_pages=11025_[
 3*2Acoff_COFF (Go32v2) mit Hilfe des internen Schreibers
 3*2Acoff_COFF (Go32v2) mit Hilfe des internen Schreibers
 3*2Apecoff_PE_COFF (Win32) mit Hilfe des internen Schreibers
 3*2Apecoff_PE_COFF (Win32) mit Hilfe des internen Schreibers
 4*2Aas_Assembliere mit Hilfe von GNU AS
 4*2Aas_Assembliere mit Hilfe von GNU AS
+4*2Agas_Assembliere mit Hilfe von GNU GAS
+4*2Agas-darwin_Assembliere darwin Mach-O64 mit Hilfe von GNU GAS
+4*2Amasm_Win64 Object Datei mit Hilfe von ml64 (Microsoft)
+4*2Apecoff_PE-COFF (Win64) mit Hilfe des internen Writer
+4*2Aelf_ELF (Linux-64bit) mit Hilfe des internen Writer
 6*2Aas_Unix o-file mit Hilfe von GNU AS
 6*2Aas_Unix o-file mit Hilfe von GNU AS
 6*2Agas_GNU Motorola Assembler
 6*2Agas_GNU Motorola Assembler
 6*2Amit_MIT Syntax (old GAS)
 6*2Amit_MIT Syntax (old GAS)
@@ -3214,6 +3282,7 @@ S*2Aas_Assembliere mit Hilfe von GNU AS
 **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp)
 **2So_Sei TP/BP 7.0 kompatibel (wie -Mtp)
 **2Ss_Konstruktor- und Destruktorname müssen "Init" und "Done" sein
 **2Ss_Konstruktor- und Destruktorname müssen "Init" und "Done" sein
 **2Sx_Exception Schlüsselwörter einschalten (Voreinstellung in Delphi/ObjFPC Moden)
 **2Sx_Exception Schlüsselwörter einschalten (Voreinstellung in Delphi/ObjFPC Moden)
+**2Sy_@<pointer> gibt einen typisierten Pointer zurück, genau wie $T+
 **1s_Rufe weder Assembler noch Linker auf (nur mit -a)
 **1s_Rufe weder Assembler noch Linker auf (nur mit -a)
 **2sh_Erzeuge Script um auf dem Host zu linken
 **2sh_Erzeuge Script um auf dem Host zu linken
 **2st_Erzeuge Script um auf dem Zielsystem zu linken
 **2st_Erzeuge Script um auf dem Zielsystem zu linken
@@ -3271,41 +3340,56 @@ S*2Tlinux_Linux
 **2*_    Dateinamen den vollständigen  v : Schreibe fpcdebug.txt mit 
 **2*_    Dateinamen den vollständigen  v : Schreibe fpcdebug.txt mit 
 **2*_    Pfad                              ganz viel Information
 **2*_    Pfad                              ganz viel Information
 **2*_m<x>,<y> : Zeige die Meldungen mit den Nummern <x> und <y> nicht
 **2*_m<x>,<y> : Zeige die Meldungen mit den Nummern <x> und <y> nicht
-3*1W<x>_Ziel-spezifische Optionen (Ziele)
-A*1W<x>_Ziel-spezifische Optionen (Ziele)
-P*1W<x>_Ziel-spezifische Optionen (Ziele)
-p*1W<x>_Ziel-spezifische Optionen (Ziele)
+**1W<x>_Spezifiziere ein natives Programm (Windows)
+3*2WA_Spezifiziere ein natives Programm (Windows)
+4*2WA_Spezifiziere ein natives Programm (Windows)
+A*2WA_Spezifiziere ein natives Programm (Windows)
 3*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 3*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 P*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 P*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 p*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
 p*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
-3*2WB_Erzeuge ein relozierbares Image (Windows)
+A*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
+4*2Wb_Erzeuge statt einer Bibliothek ein Bundle (Darwin)
+3*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
+3*2WBxxxx_Setze die Imagebasis auf xxxx (Windows, Symbian)
+4*2WB_Erzeuge ein relozierbares Image (Windows)
+4*2WBxxxx_Setze die Imagebasis auf xxxx (Windows, Symbian)
 A*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
 A*2WB_Erzeuge ein relozierbares Image (Windows, Symbian)
+A*2WBxxxx_Setze die Imagebasis auf xxxx (Windows)
 3*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
 3*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
+4*2WC_Spezifiziere "console type application" (EMX, OS/2, Windows)
 A*2WC_Spezifiziere "console type application" (Windows)
 A*2WC_Spezifiziere "console type application" (Windows)
 P*2WC_Spezifiziere "console type application" (Classic Mac OS)
 P*2WC_Spezifiziere "console type application" (Classic Mac OS)
 3*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 3*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
+4*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 A*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 A*2WD_Benutze DEFFILE um Funktionen der DLL oder EXE zu exportieren (Windows)
 3*2We_Benutze externe Resourcen (Darwin)
 3*2We_Benutze externe Resourcen (Darwin)
 4*2We_Benutze externe Resourcen (Darwin)
 4*2We_Benutze externe Resourcen (Darwin)
 A*2We_Benutze externe Resourcen (Darwin)
 A*2We_Benutze externe Resourcen (Darwin)
 P*2We_Benutze externe Resourcen (Darwin)
 P*2We_Benutze externe Resourcen (Darwin)
-p*2We_Benutze externe resoResourcenurces (Darwin)
+p*2We_Benutze externe Resourcen (Darwin)
 3*2WF_Spezifiziere "full-screen type application" (EMX, OS/2)
 3*2WF_Spezifiziere "full-screen type application" (EMX, OS/2)
 3*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
 3*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
+4*2WG_Spezifiziere "graphic type application" (EMX, OS/2, Windows)
 A*2WG_Spezifiziere "graphic type application" (Windows)
 A*2WG_Spezifiziere "graphic type application" (Windows)
 P*2WG_Spezifiziere "graphic type application" (Classic Mac OS)
 P*2WG_Spezifiziere "graphic type application" (Classic Mac OS)
 3*2Wi_Benutze interne Resourcen (Darwin)
 3*2Wi_Benutze interne Resourcen (Darwin)
+4*2Wi_Benutze interne Resourcen (Darwin)
+A*2Wi_Benutze interne Resourcen (Darwin)
 P*2Wi_Benutze interne Resourcen (Darwin)
 P*2Wi_Benutze interne Resourcen (Darwin)
 p*2Wi_Benutze interne Resourcen (Darwin)
 p*2Wi_Benutze interne Resourcen (Darwin)
+3*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
+4*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
+A*2WI_Die Verwendung der "import"-Abschnitte ein/ausschalten (Windows)
 3*2WN_Erzeuge keinen "relocation code" (notwendig für debugging) (Windows)
 3*2WN_Erzeuge keinen "relocation code" (notwendig für debugging) (Windows)
+4*2WN_Erzeuge keinen "relocation code" (notwendig für debugging) (Windows)
 A*2WN_Erzeuge keinen "relocation code" (notwendig für debugging) (Windows)
 A*2WN_Erzeuge keinen "relocation code" (notwendig für debugging) (Windows)
+A*2Wpxxxx_Spezifiziere den Kontrollertyp, mögliche Werte liefert fpc -i
+V*2Wpxxxx_Spezifiziere den Kontrollertyp, mögliche Werte liefert fpc -i
 3*2WR_Erzeuge "relocation code" (Windows)
 3*2WR_Erzeuge "relocation code" (Windows)
+4*2WR_Erzeuge "relocation code" (Windows)
 A*2WR_Erzeuge "relocation code" (Windows)
 A*2WR_Erzeuge "relocation code" (Windows)
 P*2WF_Spezifiziere "MPW tool type application" (Classic Mac OS)
 P*2WF_Spezifiziere "MPW tool type application" (Classic Mac OS)
-3*2WX_Ermögliche den executable stack (Linux)
-A*2WX_Ermögliche den executable stack (Linux)
-p*2WX_Ermögliche den executable stack (Linux)
-P*2WX_Ermögliche den executable stack (Linux)
+**2WX_Ermögliche den executable stack (Linux)
 **1X_Programm-Optionen:
 **1X_Programm-Optionen:
 **2Xc_Übergebe --shared an den Linker (nur Unix)
 **2Xc_Übergebe --shared an den Linker (nur Unix)
 **2Xd_Den Standard Bibliotheks-Suchpfad NICHT nutzen (benötigt für cross compile)
 **2Xd_Den Standard Bibliotheks-Suchpfad NICHT nutzen (benötigt für cross compile)

+ 1 - 1
compiler/msg/errore.msg

@@ -3026,7 +3026,7 @@ wpo_cant_create_feedback_file=12019_E_Cannot create specified whole program opti
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl and others
+Copyright (c) 1993-2012 by Florian Klaempfl and others
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errores.msg

@@ -2111,7 +2111,7 @@ option_code_page_not_available=11039_E_C
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorfi.msg

@@ -2258,7 +2258,7 @@ option_config_is_dir=11040_F_Le fichier de configuration $1 est un r
 # Logo (option -l)
 # Logo (option -l)
 #
 #
 option_logo=11023_[ Compilateur Free Pascal version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 option_logo=11023_[ Compilateur Free Pascal version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011, Florian Klaempfl ]
+Copyright (c) 1993-2012, Florian Klaempfl ]
 #
 #
 # Info (option -i)
 # Info (option -i)
 #
 #

+ 1 - 1
compiler/msg/errorhe.msg

@@ -2404,7 +2404,7 @@ option_confict_asm_debug=11041_W_
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorheu.msg

@@ -2404,7 +2404,7 @@ option_confict_asm_debug=11041_W_סוג הפלט של המאסף שנבחר "$1"
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorid.msg

@@ -2421,7 +2421,7 @@ option_confict_asm_debug=11041_W_Output assembler yang dipilih "$1" tidak bisa m
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler versi $FPCFULLVERSION [$FPCDATE] untuk $FPCCPU
 Free Pascal Compiler versi $FPCFULLVERSION [$FPCDATE] untuk $FPCCPU
-Hak Cipta (c) 1993-2011 oleh Florian Klaempfl
+Hak Cipta (c) 1993-2012 oleh Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 7 - 7
compiler/msg/errorpl.msg

@@ -1858,7 +1858,7 @@ unit_u_ppu_invalid_processor=10009_U_PPU jest skompilowany dla innego procesora
 unit_u_ppu_invalid_target=10010_U_PPU skompilowany dla innej platformy docelowej
 unit_u_ppu_invalid_target=10010_U_PPU skompilowany dla innej platformy docelowej
 % This unit file was compiled for a different target, and
 % This unit file was compiled for a different target, and
 % cannot be read
 % cannot be read
-unit_u_ppu_source=10011_U_r¢dˆo PPU: $1
+unit_u_ppu_source=10011_U_r¢dˆo PPU: $1
 % When you use the \var{-vu} flag, the unit CRC check is shown.
 % When you use the \var{-vu} flag, the unit CRC check is shown.
 unit_u_ppu_write=10012_U_Zapisywanie $1
 unit_u_ppu_write=10012_U_Zapisywanie $1
 % When you specify the \var{-vu} switch, the compiler will tell you where it
 % When you specify the \var{-vu} switch, the compiler will tell you where it
@@ -1902,7 +1902,7 @@ unit_w_switch_us_missed=10025_W_Kompilowanie modu
 unit_f_errors_in_unit=10026_F_Napotkano $1 bˆ©d¢w podczas kompilacji moduˆu, zatrzymanie
 unit_f_errors_in_unit=10026_F_Napotkano $1 bˆ©d¢w podczas kompilacji moduˆu, zatrzymanie
 % When the compiler encounters a fatal error or too many errors in a module
 % When the compiler encounters a fatal error or too many errors in a module
 % then it stops with this message.
 % then it stops with this message.
-unit_u_load_unit=10027_U_adowanie z $1 ($2) moduˆu $3
+unit_u_load_unit=10027_U_adowanie z $1 ($2) moduˆu $3
 % When you use the \var{-vu} flag, which unit is loaded from which unit is
 % When you use the \var{-vu} flag, which unit is loaded from which unit is
 % shown.
 % shown.
 unit_u_recompile_crc_change=10028_U_Rekompilacja $1, suma kontrolna zmieniona dla $2
 unit_u_recompile_crc_change=10028_U_Rekompilacja $1, suma kontrolna zmieniona dla $2
@@ -1956,10 +1956,10 @@ unit_u_ppu_invalid_fpumode=10042_U_U
 % Trying to compile code while using units which were not compiled with
 % Trying to compile code while using units which were not compiled with
 % the same floating point format mode. Either all code should be compiled
 % the same floating point format mode. Either all code should be compiled
 % with FPU emulation on, or with FPU emulation off.
 % with FPU emulation on, or with FPU emulation off.
-unit_u_loading_interface_units=10043_U_adowanie moduˆ¢w z cz©«ci interface moduˆu $1
+unit_u_loading_interface_units=10043_U_adowanie moduˆ¢w z cz©«ci interface moduˆu $1
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % loading the units defined in the interface part of the unit.
 % loading the units defined in the interface part of the unit.
-unit_u_loading_implementation_units=10044_U_adowanie moduˆ¢w z cz©«ci implementation moduˆu $1
+unit_u_loading_implementation_units=10044_U_adowanie moduˆ¢w z cz©«ci implementation moduˆu $1
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % loading the units defined in the implementation part of the unit.
 % loading the units defined in the implementation part of the unit.
 unit_u_interface_crc_changed=10045_U_Zmieniona suma CRC sekcji interface moduˆu $1
 unit_u_interface_crc_changed=10045_U_Zmieniona suma CRC sekcji interface moduˆu $1
@@ -1996,7 +1996,7 @@ unit_u_second_compile_unit=10054_U_Ju
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % recompiling a unit for the second time. This can happend with interdepend
 % recompiling a unit for the second time. This can happend with interdepend
 % units.
 % units.
-unit_u_loading_unit=10055_U_adowanie moduˆu $1
+unit_u_loading_unit=10055_U_adowanie moduˆu $1
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % When you use the \var{-vu} flag, the compiler warns that it starts
 % loading the unit.
 % loading the unit.
 unit_u_finished_loading_unit=10056_U_Zakoäczenie ˆadowania moduˆu $1
 unit_u_finished_loading_unit=10056_U_Zakoäczenie ˆadowania moduˆu $1
@@ -2116,7 +2116,7 @@ option_code_page_not_available=11039_E_Nieznana strona kodowa
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler wersja $FPCFULLVERSION [$FPCDATE] dla $FPCCPU
 Free Pascal Compiler wersja $FPCFULLVERSION [$FPCDATE] dla $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #
@@ -2276,7 +2276,7 @@ S*2Aas_asemblacja przy u
 3*3Op3_ustawienie procesora docelowego na PPro/PII/c6x86/K6 (tm)
 3*3Op3_ustawienie procesora docelowego na PPro/PII/c6x86/K6 (tm)
 6*2Og_generacja mniejszego kodu
 6*2Og_generacja mniejszego kodu
 6*2OG_generacja szybszego kodu (domy˜lne)
 6*2OG_generacja szybszego kodu (domy˜lne)
-6*2Ox_maksymalne optymalizacje (ci¥gle zawieraj¥ B¨DY!!!)
+6*2Ox_maksymalne optymalizacje (ci¥gle zawieraj¥ B¨DY!!!)
 6*2O0_ustawia docelowy procesor na MC68000
 6*2O0_ustawia docelowy procesor na MC68000
 6*2O2_ustawia docelowy procesor na MC68020+ (domy˜lne)
 6*2O2_ustawia docelowy procesor na MC68020+ (domy˜lne)
 **1pg_generacja kodu do profilowania przy pomocy gprof (definiuje FPC_PROFILE)
 **1pg_generacja kodu do profilowania przy pomocy gprof (definiuje FPC_PROFILE)

+ 1 - 1
compiler/msg/errorpli.msg

@@ -2116,7 +2116,7 @@ option_code_page_not_available=11039_E_Nieznana strona kodowa
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler wersja $FPCFULLVERSION [$FPCDATE] dla $FPCCPU
 Free Pascal Compiler wersja $FPCFULLVERSION [$FPCDATE] dla $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorpt.msg

@@ -2905,7 +2905,7 @@ wpo_cant_create_feedback_file=12019_E_Imposs
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Compilador Free Pascal versÆo $FPCFULLVERSION [$FPCDATE] para $FPCCPU
 Compilador Free Pascal versÆo $FPCFULLVERSION [$FPCDATE] para $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorptu.msg

@@ -2905,7 +2905,7 @@ wpo_cant_create_feedback_file=12019_E_Impossível criar arquivo retorno otimiza
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Compilador Free Pascal versão $FPCFULLVERSION [$FPCDATE] para $FPCCPU
 Compilador Free Pascal versão $FPCFULLVERSION [$FPCDATE] para $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

File diff suppressed because it is too large
+ 225 - 225
compiler/msg/errorr.msg


+ 1 - 1
compiler/msg/errorru.msg

@@ -2503,7 +2503,7 @@ wpo_cant_create_feedback_file=12019_E_Невозможно создать фай
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Компилятор Free Pascal версии $FPCFULLVERSION [$FPCDATE] для $FPCCPU
 Компилятор Free Pascal версии $FPCFULLVERSION [$FPCDATE] для $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msg/errorues.msg

@@ -2105,7 +2105,7 @@ option_code_page_not_available=11039_E_Código de página desconocido
 #
 #
 option_logo=11023_[
 option_logo=11023_[
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
 Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPCCPU
-Copyright (c) 1993-2011 by Florian Klaempfl
+Copyright (c) 1993-2012 by Florian Klaempfl
 ]
 ]
 
 
 #
 #

+ 1 - 1
compiler/msgtxt.inc

@@ -1074,7 +1074,7 @@ const msgtxt : array[0..000257,1..240] of char=(
   'file "$1"'#000+
   'file "$1"'#000+
   '11023_Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPC'+
   '11023_Free Pascal Compiler version $FPCFULLVERSION [$FPCDATE] for $FPC'+
   'CPU'#010+
   'CPU'#010+
-  'Copyright (c) 1993-2011 by Florian Klaempfl and others'#000+
+  'Copyright (c) 1993-2012 by Florian Klaempfl and others'#000+
   '11024_Free Pascal Compiler version $FPCVERSION'#010+
   '11024_Free Pascal Compiler version $FPCVERSION'#010+
   #010+
   #010+
   'Compiler Date      :',' $FPCDATE'#010+
   'Compiler Date      :',' $FPCDATE'#010+

+ 3 - 0
compiler/pmodules.pas

@@ -741,11 +741,13 @@ implementation
          pu      : tused_unit;
          pu      : tused_unit;
          hp2     : tmodule;
          hp2     : tmodule;
          unitsym : tunitsym;
          unitsym : tunitsym;
+         filepos : tfileposinfo;
       begin
       begin
          consume(_USES);
          consume(_USES);
          repeat
          repeat
            s:=pattern;
            s:=pattern;
            sorg:=orgpattern;
            sorg:=orgpattern;
+           filepos:=current_tokenpos;
            consume(_ID);
            consume(_ID);
            { support "<unit> in '<file>'" construct, but not for tp7 }
            { support "<unit> in '<file>'" construct, but not for tp7 }
            fn:='';
            fn:='';
@@ -784,6 +786,7 @@ implementation
               { Create unitsym, we need to use the name as specified, we
               { Create unitsym, we need to use the name as specified, we
                 can not use the modulename because that can be different
                 can not use the modulename because that can be different
                 when -Un is used }
                 when -Un is used }
+              current_tokenpos:=filepos;
               unitsym:=tunitsym.create(sorg,nil);
               unitsym:=tunitsym.create(sorg,nil);
               current_module.localsymtable.insert(unitsym);
               current_module.localsymtable.insert(unitsym);
               { the current module uses the unit hp2 }
               { the current module uses the unit hp2 }

Some files were not shown because too many files changed in this diff