As discussed on core enable the abstract class construction warning by default and also make it controllable with {$warn constructing_abstract ...}.

* scandir.pas, dir_warn: also adjust the message state for type_w_instance_abstract_class if the identifier is CONSTRUCTING_ABSTRACT
* msg/errore.msg: enable type_w_instance_abstract_class by default

* msgidx.inc, msgtxt.inc: updated

git-svn-id: trunk@28137 -
This commit is contained in:
svenbarth 2014-07-02 19:40:22 +00:00
parent 43839d1bda
commit 30be5d8d33
4 changed files with 180 additions and 177 deletions

View File

@ -1961,7 +1961,7 @@ type_e_type_not_allowed_for_type_helper=04120_E_Type "$1" cannot be extended by
type_e_procedure_must_be_far=04121_E_Procedure or function must be far in order to allow taking its address: "$1"
% In certain i8086 memory models (medium, large and huge), procedures and functions
% have to be declared 'far' in order to allow their address to be taken.
type_w_instance_abstract_class=04122_-W_Creating an instance of abstract class "$1"
type_w_instance_abstract_class=04122_W_Creating an instance of abstract class "$1"
% The specified class is declared as \var{abstract} and thus no instance of this class
% should be created. This is merely a warning for Delphi compatibility.
% \end{description}

View File

@ -994,7 +994,7 @@ const
option_info=11024;
option_help_pages=11025;
MsgTxtSize = 71975;
MsgTxtSize = 71974;
MsgIdxMax : array[1..20] of longint=(
26,99,339,123,89,57,126,27,202,64,

File diff suppressed because it is too large Load Diff

View File

@ -1441,7 +1441,10 @@ unit scandir;
end;
if ident='CONSTRUCTING_ABSTRACT' then
recordpendingmessagestate(type_w_instance_with_abstract, msgstate)
begin
recordpendingmessagestate(type_w_instance_with_abstract, msgstate);
recordpendingmessagestate(type_w_instance_abstract_class, msgstate);
end
else
if ident='IMPLICIT_VARIANTS' then
recordpendingmessagestate(parser_w_implicit_uses_of_variants_unit, msgstate)