소스 검색

* fixed refs book keeping

git-svn-id: trunk@2211 -
florian 19 년 전
부모
커밋
e43a1223ff
1개의 변경된 파일5개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      compiler/i386/popt386.pas

+ 5 - 1
compiler/i386/popt386.pas

@@ -629,7 +629,11 @@ begin
                                 taicpu(p).condition:=inverse_cond(taicpu(p).condition);
                                 tai_label(hp2).l.decrefs;
                                 taicpu(p).oper[0]^.ref^.symbol:=taicpu(hp1).oper[0]^.ref^.symbol;
-                                taicpu(p).oper[0]^.ref^.symbol.increfs;
+                                { when free'ing hp1, the ref. isn't decresed, so we don't
+                                  increase it (FK)
+
+                                  taicpu(p).oper[0]^.ref^.symbol.increfs;
+                                }
                                 asml.remove(hp1);
                                 hp1.free;
                                 GetFinalDestination(asml, taicpu(p),0);