diff --git a/compiler/cgai386.pas b/compiler/cgai386.pas index c640c4698e..e9a2530d20 100644 --- a/compiler/cgai386.pas +++ b/compiler/cgai386.pas @@ -2600,6 +2600,8 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister); end; + { DO NOT RELY on the fact that the ptree is not yet swaped + because of inlining code PM } procedure firstcomplex(p : ptree); var hp : ptree; @@ -2608,7 +2610,11 @@ procedure mov_reg_to_dest(p : ptree; s : topsize; reg : tregister); if (p^.treetype in [orn,andn]) and (p^.left^.resulttype^.deftype=orddef) and (porddef(p^.left^.resulttype)^.typ in [bool8bit,bool16bit,bool32bit]) then - p^.swaped:=false + begin + { p^.swaped:=false} + if p^.swaped then + internalerror(234234); + end else if (p^.left^.registers32