Ver código fonte

* make_not_regable() now also works on temprefnodes

git-svn-id: trunk@4661 -
Jonas Maebe 19 anos atrás
pai
commit
e55d6d7145
1 arquivos alterados com 5 adições e 0 exclusões
  1. 5 0
      compiler/htypechk.pas

+ 5 - 0
compiler/htypechk.pas

@@ -661,6 +661,11 @@ implementation
                   tabstractvarsym(tloadnode(p).symtableentry).varregable:=how
                 else
                   tabstractvarsym(tloadnode(p).symtableentry).varregable:=vr_none;
+            temprefn :
+              if (ttemprefnode(p).tempinfo^.may_be_in_reg) and
+                 ((not records_only) or
+                  (ttemprefnode(p).tempinfo^.restype.def.deftype = recorddef)) then
+                ttemprefnode(p).tempinfo^.may_be_in_reg:=false;
          end;
       end;