mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-22 06:49:27 +02:00
* search defaulthandler only for message methods
This commit is contained in:
parent
1770c1db0f
commit
31286d02e6
@ -1883,14 +1883,22 @@ implementation
|
||||
begin
|
||||
if anon_inherited then
|
||||
begin
|
||||
{ we didn't find a member in the parents call the
|
||||
DefaultHandler }
|
||||
sym:=searchsym_in_class(classh,'DEFAULTHANDLER');
|
||||
if not assigned(sym) or
|
||||
(sym.typ<>procsym) then
|
||||
internalerror(200303171);
|
||||
p1:=nil;
|
||||
do_proc_call(sym,sym.owner,false,again,p1);
|
||||
{ For message methods we need to call DefaultHandler }
|
||||
if (po_msgint in pd.procoptions) or
|
||||
(po_msgstr in pd.procoptions) then
|
||||
begin
|
||||
sym:=searchsym_in_class(classh,'DEFAULTHANDLER');
|
||||
if not assigned(sym) or
|
||||
(sym.typ<>procsym) then
|
||||
internalerror(200303171);
|
||||
p1:=nil;
|
||||
do_proc_call(sym,sym.owner,false,again,p1);
|
||||
end
|
||||
else
|
||||
begin
|
||||
{ we need to ignore the inherited; }
|
||||
p1:=cnothingnode.create;
|
||||
end;
|
||||
end
|
||||
else
|
||||
begin
|
||||
@ -2399,7 +2407,10 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.120 2003-05-15 18:58:53 peter
|
||||
Revision 1.121 2003-05-22 17:43:21 peter
|
||||
* search defaulthandler only for message methods
|
||||
|
||||
Revision 1.120 2003/05/15 18:58:53 peter
|
||||
* removed selfpointer_offset, vmtpointer_offset
|
||||
* tvarsym.adjusted_address
|
||||
* address in localsymtable is now in the real direction
|
||||
|
Loading…
Reference in New Issue
Block a user