* concatcopy could release a wrong reference because the offset was

increased without restoring the original before the release of
    a temp
This commit is contained in:
peter 2001-10-20 17:22:57 +00:00
parent cea68ee35c
commit 6a42a332dd

View File

@ -1258,6 +1258,7 @@ implementation
var
ecxpushed : boolean;
oldsourceoffset,
helpsize : longint;
i : byte;
reg8,reg32 : tregister;
@ -1274,6 +1275,7 @@ implementation
end;
begin
oldsourceoffset:=source.offset;
if (not loadref) and
((size<=8) or
(not(cs_littlesize in aktglobalswitches ) and (size<=12))) then
@ -1403,7 +1405,10 @@ implementation
maybe_loadself;
end;
if delsource then
ungetiftemp(source);
begin
source.offset:=oldsourceoffset;
ungetiftemp(source);
end;
end;
@ -2969,7 +2974,12 @@ implementation
end.
{
$Log$
Revision 1.6 2001-10-14 11:49:51 jonas
Revision 1.7 2001-10-20 17:22:57 peter
* concatcopy could release a wrong reference because the offset was
increased without restoring the original before the release of
a temp
Revision 1.6 2001/10/14 11:49:51 jonas
* finetuned register allocation info for assignments
Revision 1.5 2001/09/30 21:28:34 peter