mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-14 16:49:07 +02:00
* write parameter refs to ppu (only 1=used; 0=unsed), fixes parameter usage checking of inlined procedures loaded from units
git-svn-id: trunk@21482 -
This commit is contained in:
parent
e96dc4204e
commit
31b1678757
@ -43,7 +43,7 @@ type
|
|||||||
{$endif Test_Double_checksum}
|
{$endif Test_Double_checksum}
|
||||||
|
|
||||||
const
|
const
|
||||||
CurrentPPUVersion = 148;
|
CurrentPPUVersion = 149;
|
||||||
|
|
||||||
{ buffer sizes }
|
{ buffer sizes }
|
||||||
maxentrysize = 1024;
|
maxentrysize = 1024;
|
||||||
|
@ -1833,6 +1833,9 @@ implementation
|
|||||||
}
|
}
|
||||||
varstate:=tvarstate(ppufile.getbyte);
|
varstate:=tvarstate(ppufile.getbyte);
|
||||||
|
|
||||||
|
{ read usage info }
|
||||||
|
refs:=ppufile.getbyte;
|
||||||
|
|
||||||
paraloc[calleeside].init;
|
paraloc[calleeside].init;
|
||||||
paraloc[callerside].init;
|
paraloc[callerside].init;
|
||||||
if vo_has_explicit_paraloc in varoptions then
|
if vo_has_explicit_paraloc in varoptions then
|
||||||
@ -1863,6 +1866,9 @@ implementation
|
|||||||
oldintfcrc:=ppufile.do_crc;
|
oldintfcrc:=ppufile.do_crc;
|
||||||
ppufile.do_crc:=false;
|
ppufile.do_crc:=false;
|
||||||
ppufile.putbyte(ord(varstate));
|
ppufile.putbyte(ord(varstate));
|
||||||
|
{ write also info about the usage of parameters,
|
||||||
|
the absolute usage does not matter }
|
||||||
|
ppufile.putbyte(min(1,refs));
|
||||||
ppufile.do_crc:=oldintfcrc;
|
ppufile.do_crc:=oldintfcrc;
|
||||||
|
|
||||||
if vo_has_explicit_paraloc in varoptions then
|
if vo_has_explicit_paraloc in varoptions then
|
||||||
|
@ -2130,6 +2130,7 @@ begin
|
|||||||
writeln(space,' ParaNr : ',getword);
|
writeln(space,' ParaNr : ',getword);
|
||||||
writeln(space,' Univ : ',boolean(getbyte));
|
writeln(space,' Univ : ',boolean(getbyte));
|
||||||
writeln(space,' VarState : ',getbyte);
|
writeln(space,' VarState : ',getbyte);
|
||||||
|
writeln(space,' Refs : ',getbyte);
|
||||||
if (vo_has_explicit_paraloc in varoptions) then
|
if (vo_has_explicit_paraloc in varoptions) then
|
||||||
begin
|
begin
|
||||||
i:=getbyte;
|
i:=getbyte;
|
||||||
|
Loading…
Reference in New Issue
Block a user