* search defaulthandler only for message methods

This commit is contained in:
peter 2003-05-22 17:43:21 +00:00
parent 1770c1db0f
commit 31286d02e6

View File

@ -1883,8 +1883,10 @@ implementation
begin begin
if anon_inherited then if anon_inherited then
begin begin
{ we didn't find a member in the parents call the { For message methods we need to call DefaultHandler }
DefaultHandler } if (po_msgint in pd.procoptions) or
(po_msgstr in pd.procoptions) then
begin
sym:=searchsym_in_class(classh,'DEFAULTHANDLER'); sym:=searchsym_in_class(classh,'DEFAULTHANDLER');
if not assigned(sym) or if not assigned(sym) or
(sym.typ<>procsym) then (sym.typ<>procsym) then
@ -1892,6 +1894,12 @@ implementation
p1:=nil; p1:=nil;
do_proc_call(sym,sym.owner,false,again,p1); do_proc_call(sym,sym.owner,false,again,p1);
end end
else
begin
{ we need to ignore the inherited; }
p1:=cnothingnode.create;
end;
end
else else
begin begin
Message1(sym_e_id_no_member,hs); Message1(sym_e_id_no_member,hs);
@ -2399,7 +2407,10 @@ implementation
end. end.
{ {
$Log$ $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 * removed selfpointer_offset, vmtpointer_offset
* tvarsym.adjusted_address * tvarsym.adjusted_address
* address in localsymtable is now in the real direction * address in localsymtable is now in the real direction