|
@@ -585,7 +585,7 @@ interface
|
|
|
{ number of user visible parameters }
|
|
|
maxparacount,
|
|
|
minparacount : byte;
|
|
|
- constructor create(dt:tdeftyp;level:byte);
|
|
|
+ constructor create(dt:tdeftyp;level:byte;doregister:boolean);
|
|
|
constructor ppuload(dt:tdeftyp;ppufile:tcompilerppufile);
|
|
|
destructor destroy;override;
|
|
|
procedure ppuwrite(ppufile:tcompilerppufile);override;
|
|
@@ -748,7 +748,7 @@ interface
|
|
|
{ set to a value different from tsk_none in case this procdef is for
|
|
|
a routine that has to be internally generated by the compiler }
|
|
|
synthetickind : tsynthetickind;
|
|
|
- constructor create(level:byte);virtual;
|
|
|
+ constructor create(level:byte;doregister:boolean);virtual;
|
|
|
constructor ppuload(ppufile:tcompilerppufile);
|
|
|
destructor destroy;override;
|
|
|
{ do not override this routine in platform-specific subclasses,
|
|
@@ -4396,9 +4396,9 @@ implementation
|
|
|
TABSTRACTPROCDEF
|
|
|
***************************************************************************}
|
|
|
|
|
|
- constructor tabstractprocdef.create(dt:tdeftyp;level:byte);
|
|
|
+ constructor tabstractprocdef.create(dt:tdeftyp;level:byte;doregister:boolean);
|
|
|
begin
|
|
|
- inherited create(dt,true);
|
|
|
+ inherited create(dt,doregister);
|
|
|
parast:=tparasymtable.create(self,level);
|
|
|
paras:=nil;
|
|
|
minparacount:=0;
|
|
@@ -4755,9 +4755,9 @@ implementation
|
|
|
if newtyp=procdef then
|
|
|
begin
|
|
|
if (copytyp<>pc_bareproc) then
|
|
|
- result:=cprocdef.create(nestinglevel)
|
|
|
+ result:=cprocdef.create(nestinglevel,true)
|
|
|
else
|
|
|
- result:=cprocdef.create(normal_function_level);
|
|
|
+ result:=cprocdef.create(normal_function_level,true);
|
|
|
tprocdef(result).visibility:=vis_public;
|
|
|
end
|
|
|
else
|
|
@@ -5127,9 +5127,9 @@ implementation
|
|
|
end;
|
|
|
|
|
|
|
|
|
- constructor tprocdef.create(level:byte);
|
|
|
+ constructor tprocdef.create(level:byte;doregister:boolean);
|
|
|
begin
|
|
|
- inherited create(procdef,level);
|
|
|
+ inherited create(procdef,level,doregister);
|
|
|
implprocdefinfo:=allocmem(sizeof(implprocdefinfo^));
|
|
|
localst:=tlocalsymtable.create(self,parast.symtablelevel);
|
|
|
{$ifdef symansistr}
|
|
@@ -5925,7 +5925,7 @@ implementation
|
|
|
|
|
|
constructor tprocvardef.create(level:byte);
|
|
|
begin
|
|
|
- inherited create(procvardef,level);
|
|
|
+ inherited create(procvardef,level,true);
|
|
|
end;
|
|
|
|
|
|
|