Procházet zdrojové kódy

Raise internalerror inside RemoveCurentP is called with p=hp1, because it leads to using a class instance after it has been freed

git-svn-id: trunk@47689 -
pierre před 4 roky
rodič
revize
0189276a12
1 změnil soubory, kde provedl 2 přidání a 0 odebrání
  1. 2 0
      compiler/aoptobj.pas

+ 2 - 0
compiler/aoptobj.pas

@@ -1506,6 +1506,8 @@ Unit AoptObj;
 
     procedure TAOptObj.RemoveCurrentP(var p: tai; const hp1: tai); inline;
       begin
+        if (p=hp1) then
+          internalerror(2020120501);
         UpdateUsedRegs(tai(p.Next));
         AsmL.Remove(p);
         p.Free;