* don't override varregable for tabstractvarsyms loaded from a ppu when

setting their vardef (since the varregable was stored/loaded in the ppu
    and should be kept the same -- fixes webtbs/tw7817a.pp and tw7817b.pp
    when both compiled separately and with regvars)

git-svn-id: trunk@5540 -
This commit is contained in:
Jonas Maebe 2006-12-04 14:16:43 +00:00
parent d7633e9dd0
commit b957d59391

View File

@ -943,8 +943,16 @@ implementation
procedure tabstractvarsym.deref;
var
oldvarregable: tvarregable;
begin
{ setting the vardef also updates varregable. We just loaded this }
{ value from a ppu, so it must not be changed (e.g. tw7817a.pp/ }
{ tw7817b.pp: the address is taken of a local variable in an }
{ inlined procedure -> must remain non-regable when inlining) }
oldvarregable:=varregable;
vardef:=tdef(vardefderef.resolve);
varregable:=oldvarregable;
end;