|
@@ -1865,6 +1865,22 @@ implementation
|
|
|
if not hasoverload then
|
|
|
break;
|
|
|
end;
|
|
|
+ if is_objectpascal_helper(structdef) then
|
|
|
+ begin
|
|
|
+ if not assigned(tobjectdef(structdef).extendeddef) then
|
|
|
+ Internalerror(2011062601);
|
|
|
+ { search methods in the extended type as well }
|
|
|
+ srsym:=tprocsym(tobjectdef(structdef).extendeddef.symtable.FindWithHash(hashedid));
|
|
|
+ if assigned(srsym) and
|
|
|
+ { Delphi allows hiding a property by a procedure with the same name }
|
|
|
+ (srsym.typ=procsym) then
|
|
|
+ begin
|
|
|
+ hasoverload:=processprocsym(tprocsym(srsym));
|
|
|
+ { when there is no explicit overload we stop searching }
|
|
|
+ if not hasoverload then
|
|
|
+ break;
|
|
|
+ end;
|
|
|
+ end;
|
|
|
{ next parent }
|
|
|
if (structdef.typ=objectdef) then
|
|
|
structdef:=tobjectdef(structdef).childof
|