msg/errore.msg:

+ add error message if a generic method is declared inside an interface
  + add error message if a generic method is declared as virtual

git-svn-id: trunk@31764 -
This commit is contained in:
svenbarth 2015-09-18 14:52:47 +00:00
parent 529677cc79
commit 79f19f79f2
3 changed files with 534 additions and 529 deletions

View File

@ -411,7 +411,7 @@ scan_e_illegal_hugepointernormalization=02098_E_Illegal argument for HUGEPOINTER
#
# Parser
#
# 03339 is the last used one
# 03343 is the last used one
#
% \section{Parser messages}
% This section lists all parser messages. The parser takes care of the
@ -1536,6 +1536,12 @@ parser_u_already_compiled=03340_UL_Unit $1 has been already compiled meanwhile.
% a compilation of the current unit, so the current compilation can be aborted.
parser_e_explicit_method_implementation_for_specializations_not_allowed=03341_E_Explicit implementation of methods for specializations of generics is not allowed
% Methods introduced in a generic must be implemented for the generic. It is not possible to implement them only for specializations.
parser_e_no_genfuncs_in_interfaces=03342_E_Generic methods are not allowed in interfaces
% Generic methods are not allowed in interfaces, because there is no way to specialize a suitable
% implementation.
parser_e_genfuncs_cannot_be_virtual=03343_E_Generic methods can not be virtual
% Generic methods can not be declared as virtual as there'd need to be a VMT entry for each
% specialization. This is however not possible with a static VMT.
%
%
% \end{description}

View File

@ -443,6 +443,8 @@ const
parser_e_global_generic_references_static=03339;
parser_u_already_compiled=03340;
parser_e_explicit_method_implementation_for_specializations_not_allowed=03341;
parser_e_no_genfuncs_in_interfaces=03342;
parser_e_genfuncs_cannot_be_virtual=03343;
type_e_mismatch=04000;
type_e_incompatible_types=04001;
type_e_not_equal_types=04002;
@ -1017,9 +1019,9 @@ const
option_info=11024;
option_help_pages=11025;
MsgTxtSize = 76087;
MsgTxtSize = 76184;
MsgIdxMax : array[1..20] of longint=(
26,99,342,124,96,58,127,32,207,64,
26,99,344,124,96,58,127,32,207,64,
58,20,1,1,1,1,1,1,1,1
);

File diff suppressed because it is too large Load Diff