Преглед изворни кода

* fixed TAOptBase.SkipEntryExitMarker() not initialising out parameter in
all cases (patch by J. Gareth Moreton, mantis #36372)

git-svn-id: trunk@43843 -

Jonas Maebe пре 5 година
родитељ
комит
ebd674d40e
1 измењених фајлова са 1 додато и 1 уклоњено
  1. 1 1
      compiler/aoptbase.pas

+ 1 - 1
compiler/aoptbase.pas

@@ -266,9 +266,9 @@ unit aoptbase;
   class function TAOptBase.SkipEntryExitMarker(current: tai; out next: tai): boolean;
   class function TAOptBase.SkipEntryExitMarker(current: tai; out next: tai): boolean;
     begin
     begin
       result:=true;
       result:=true;
+      next:=current;
       if current.typ<>ait_marker then
       if current.typ<>ait_marker then
         exit;
         exit;
-      next:=current;
       while GetNextInstruction(next,next) do
       while GetNextInstruction(next,next) do
         begin
         begin
           if (next.typ<>ait_marker) or not(tai_marker(next).Kind in [mark_Position,mark_BlockStart]) then
           if (next.typ<>ait_marker) or not(tai_marker(next).Kind in [mark_Position,mark_BlockStart]) then