* ppudump: Output "MethodPtr" attribute for procedural types.

git-svn-id: trunk@24504 -
This commit is contained in:
yury 2013-05-15 08:15:23 +00:00
parent 9f0c23bd4c
commit ec6ff22588
2 changed files with 12 additions and 0 deletions

View File

@ -1720,6 +1720,8 @@ begin
if po_overridingmethod in procoptions then Include(ProcDef.Options, poOverriding);
if po_overload in procoptions then Include(ProcDef.Options, poOverload);
if po_inline in procoptions then Include(ProcDef.Options, poInline);
if (po_methodpointer in procoptions) and (ProcDef.DefType = dtProcType) then
TPpuProcTypeDef(ProcDef).MethodPtr:=True;
write([space,' Options : ']);
first:=true;

View File

@ -204,7 +204,10 @@ type
{ TPpuProcTypeDef }
TPpuProcTypeDef = class(TPpuProcDef)
protected
procedure BeforeWriteItems(Output: TPpuOutput); override;
public
MethodPtr: boolean;
constructor Create(AParent: TPpuContainerDef); override;
end;
@ -1033,6 +1036,13 @@ end;
{ TPpuProcTypeDef }
procedure TPpuProcTypeDef.BeforeWriteItems(Output: TPpuOutput);
begin
inherited BeforeWriteItems(Output);
if MethodPtr then
Output.WriteBool('MethodPtr', MethodPtr);
end;
constructor TPpuProcTypeDef.Create(AParent: TPpuContainerDef);
begin
inherited Create(AParent);