* only save/restore nf_forcevaria flag when reversing order of

arrayconstructor elements, since the other flags are element specific
This commit is contained in:
Jonas Maebe 2001-11-07 13:52:52 +00:00
parent 2a04e66b42
commit c9f75e434f

View File

@ -743,9 +743,9 @@ implementation
{ we need a copy here, because self is destroyed } { we need a copy here, because self is destroyed }
{ by firstpass later } { by firstpass later }
hp:=tarrayconstructornode(getcopy); hp:=tarrayconstructornode(getcopy);
{ we also need a copy of the flags to restore later (e.g. for } { we also need a copy of the nf_ forcevaria flag to restore }
{ forcevaria) (JM) } { later) (JM) }
orgflags := flags; orgflags := flags * [nf_forcevaria];
while assigned(hp) do while assigned(hp) do
begin begin
thp:=tarrayconstructornode(hp.right); thp:=tarrayconstructornode(hp.right);
@ -753,7 +753,7 @@ implementation
chp:=hp; chp:=hp;
hp:=thp; hp:=thp;
end; end;
chp.flags := orgflags; chp.flags := chp.flags+orgflags;
include(chp.flags,nf_cargswap); include(chp.flags,nf_cargswap);
chp.location.loc:=LOC_MEM; chp.location.loc:=LOC_MEM;
calcregisters(chp,0,0,0); calcregisters(chp,0,0,0);
@ -821,7 +821,11 @@ begin
end. end.
{ {
$Log$ $Log$
Revision 1.29 2001-11-02 22:58:02 peter Revision 1.30 2001-11-07 13:52:52 jonas
* only save/restore nf_forcevaria flag when reversing order of
arrayconstructor elements, since the other flags are element specific
Revision 1.29 2001/11/02 22:58:02 peter
* procsym definition rewrite * procsym definition rewrite
Revision 1.28 2001/10/31 17:34:20 jonas Revision 1.28 2001/10/31 17:34:20 jonas